ฟังก์ชันแบ่งออกเป็น 2 ประเภทใหญ่ๆ ดังนี้ −
- ฟังก์ชันที่กำหนดไว้ล่วงหน้า
- ฟังก์ชันที่กำหนดโดยผู้ใช้
ฟังก์ชันไลบรารีที่กำหนดไว้ล่วงหน้า (หรือ)
-
ฟังก์ชันเหล่านี้ถูกกำหนดไว้แล้วในไลบรารีระบบ
-
โปรแกรมเมอร์สามารถนำรหัสที่มีอยู่ในไลบรารีระบบมาใช้ซ้ำได้ ซึ่งเป็นประโยชน์ในการเขียนโค้ดที่ปราศจากข้อผิดพลาด
-
ผู้ใช้จะต้องตระหนักถึงไวยากรณ์ของฟังก์ชัน
ตัวอย่างเช่น ฟังก์ชัน sqrt() มีอยู่ในไลบรารี math.h และการใช้งานคือ y=sqrt (x) โดยที่ x=number ต้องเป็นค่าบวก
หากค่า x คือ 25 นั่นคือ y =sqrt (25) แล้ว 'y' =5.
ในทำนองเดียวกัน printf() มีอยู่ในไลบรารี stdio.h และ clrscr() มีอยู่ในไลบรารี conio.h
โปรแกรม
#include<stdio.h> #include<conio.h> #include<math.h> main (){ int x,y; clrscr (); printf (“enter a positive number”); scanf (“ %d”, &x) y = sqrt(x); printf(“squareroot = %d”, y); getch(); }
ผลลัพธ์
Enter a positive number 25 Squareroot = 5
ฟังก์ชันที่กำหนดโดยผู้ใช้
-
ฟังก์ชันเหล่านี้ต้องถูกกำหนดโดยโปรแกรมเมอร์หรือผู้ใช้
-
โปรแกรมเมอร์ต้องเขียนโค้ดสำหรับฟังก์ชันดังกล่าวและทดสอบอย่างถูกต้องก่อนใช้งาน
-
ผู้ใช้กำหนดรูปแบบการทำงานของฟังก์ชัน ดังนั้นจึงไม่จำเป็นต้องรวมไฟล์ส่วนหัวใดๆ
ตัวอย่างเช่น main(), swap(), sum() เป็นต้น เป็นฟังก์ชันบางส่วนที่ผู้ใช้กำหนด
ตัวอย่าง
#include<stdio.h> #include<conio.h> main (){ int sum (int, int); int a, b, c; printf (“enter 2 numbers”); scanf (“ %d %d”, &a ,&b) c = sum (a,b); printf(“sum = %d”, c); getch(); } int sum (int a, int b){ int c; c=a+b; return c; }
ผลลัพธ์
Enter 2 numbers 10 20 Sum = 30