ที่นี่เราจะมาดูกันว่าทำไมเราจึงควรใช้ฟังก์ชันต้นแบบใน C ต้นแบบฟังก์ชันใช้เพื่อบอกคอมไพเลอร์เกี่ยวกับจำนวนอาร์กิวเมนต์และเกี่ยวกับประเภทข้อมูลที่จำเป็นของพารามิเตอร์ฟังก์ชัน และยังบอกเกี่ยวกับประเภทการส่งคืนของฟังก์ชันอีกด้วย จากข้อมูลนี้ คอมไพเลอร์จะตรวจสอบลายเซ็นของฟังก์ชันก่อนที่จะเรียกใช้ หากไม่ได้กล่าวถึงต้นแบบของฟังก์ชัน โปรแกรมอาจถูกคอมไพล์โดยมีคำเตือน และบางครั้งก็สร้างผลลัพธ์ที่แปลกออกไป
หากบางฟังก์ชันถูกเรียกใช้ที่ไหนสักแห่ง แต่ยังไม่ได้กำหนดเนื้อหาของฟังก์ชัน ซึ่งถูกกำหนดหลังจากบรรทัดปัจจุบัน ฟังก์ชันนั้นอาจสร้างปัญหาได้ คอมไพเลอร์ไม่พบฟังก์ชันและลายเซ็นต์คืออะไร ในกรณีนั้น เราจำเป็นต้องสร้างต้นแบบขึ้นมา หากกำหนดฟังก์ชันไว้ก่อนหน้านี้ เราก็ไม่ต้องการต้นแบบ
โค้ดตัวอย่าง
#include<stdio.h> main() { function(50); } void function(int x) { printf("The value of x is: %d", x); }
ผลลัพธ์
The value of x is: 50
นี่แสดงผลลัพธ์ แต่แสดงคำเตือนดังนี้:
[Warning] conflicting types for 'function' [Note] previous implicit declaration of 'function' was here
ขณะนี้ใช้ต้นแบบฟังก์ชัน จึงสามารถดำเนินการได้โดยไม่มีปัญหา
โค้ดตัวอย่าง
#include<stdio.h> void function(int); //prototype main() { function(50); } void function(int x) { printf("The value of x is: %d", x); }
ผลลัพธ์
The value of x is: 50