Latest web development tutorials
×

C หลักสูตร

C กวดวิชาภาษา C แนะนำโดยย่อ C การตั้งค่าสภาพแวดล้อม C โครงสร้างหลักสูตร C ไวยากรณ์พื้นฐาน C ชนิดข้อมูล C ตัวแปร C คงที่ C ประเภทการจัดเก็บ C ผู้ประกอบการ C ผู้พิพากษา C การไหลเวียน C ฟังก์ชัน C การกำหนดขอบเขตกฎระเบียบ C แถว C ชี้ C เชือก C โครงสร้าง C สหภาพ C ฟิลด์บิต C typedef C อินพุตและเอาต์พุต C การอ่านออกเขียนเอกสาร C preprocessor C ส่วนหัว C ปลดเปลื้อง C จัดการข้อผิดพลาด C recursion C พารามิเตอร์ตัวแปร C จัดการหน่วยความจำ C บรรทัดคำสั่ง C คลาสสิก 100 ราย

C ห้องสมุดมาตรฐาน

C ห้องสมุดมาตรฐาน - คู่มืออ้างอิง C ห้องสมุดมาตรฐาน - <assert.h> C ห้องสมุดมาตรฐาน - <ctype.h> C ห้องสมุดมาตรฐาน - <errno.h> C ห้องสมุดมาตรฐาน - <float.h> C ห้องสมุดมาตรฐาน - <limits.h> C ห้องสมุดมาตรฐาน - <locale.h> C ห้องสมุดมาตรฐาน - <math.h> C ห้องสมุดมาตรฐาน - <setjmp.h> C ห้องสมุดมาตรฐาน - <signal.h> C ห้องสมุดมาตรฐาน - <stdarg.h> C ห้องสมุดมาตรฐาน - <stddef.h> C ห้องสมุดมาตรฐาน - <stdio.h> C ห้องสมุดมาตรฐาน - <stdlib.h> C ห้องสมุดมาตรฐาน - <string.h> C ห้องสมุดมาตรฐาน - <time.h>

ฟังก์ชัน C

คือชุดของฟังก์ชั่นในการดำเนินพันธกิจร่วมกัน ทุกโปรแกรม Cมีอย่างน้อยหนึ่งฟังก์ชั่นที่เป็นหลักของฟังก์ชั่นหลัก () โปรแกรมที่ง่ายทุกคนสามารถกำหนดฟังก์ชั่นอื่น ๆ เพิ่มเติม

คุณสามารถใส่รหัสลงในฟังก์ชั่นที่แตกต่างกัน วิธีการแบ่งรหัสลงในฟังก์ชั่นที่แยกจากกันขึ้นอยู่กับคุณที่จะตัดสินใจ แต่เหตุผลแบ่งออกมักจะดำเนินการในแต่ละฟังก์ชั่นขึ้นอยู่กับงานที่เฉพาะเจาะจงที่จะดำเนินการ

ประกาศฟังก์ชันบอกชื่อฟังก์ชันคอมไพเลอร์ชนิดกลับและพารามิเตอร์นิยามฟังก์ชันให้ร่างกายที่เกิดขึ้นจริงของการทำงาน

C ห้องสมุดมาตรฐานให้มากในตัวฟังก์ชั่นของโปรแกรมสามารถเรียก ยกตัวอย่างเช่นฟังก์ชันstrcat () ถูกนำมาใช้ในการเชื่อมต่อสองสายที่ memcpyฟังก์ชั่น()เพื่อคัดลอกหน่วยความจำไปยังตำแหน่งอื่น

มีฟังก์ชั่นหลาย ๆ ที่เรียกว่าเช่นวิธีการวิธีการหรือซับรูทีนและอื่น ๆ

ฟังก์ชั่นที่กำหนดไว้

รูปแบบทั่วไปของฟังก์ชั่นภาษา C ถูกกำหนดไว้ดังต่อไปนี้:

return_type function_name( parameter list )
{
   body of the function
}

ใน C, ฟังก์ชั่นจากส่วนหัวของฟังก์ชั่นและการทำงานของส่วนประกอบของร่างกาย ข้างล่างนี้เป็นส่วนหนึ่งของการทำงาน:

  • ประเภทกลับ: ฟังก์ชั่นสามารถกลับค่าreturn_type เป็นชนิดข้อมูลของค่าส่งกลับโดยฟังก์ชั่นฟังก์ชั่นบางส่วนดำเนินการที่ต้องการโดยไม่ต้องส่งคืนค่าในกรณีนี้เป็นโมฆะ return_type คำหลัก
  • ชื่อฟังก์ชั่น: นี่คือชื่อจริงของฟังก์ชั่นชื่อฟังก์ชั่นและรายการพารามิเตอร์ร่วมกันเป็นลายเซ็นของฟังก์ชั่น
  • พารามิเตอร์: พารามิเตอร์เป็นเหมือนตัวยึดเมื่อฟังก์ชั่นที่เรียกว่าคุณส่งค่าพารามิเตอร์ค่านี้จะเรียกว่าพารามิเตอร์ที่เกิดขึ้นจริง รายการพารามิเตอร์รวมถึงประเภทของพารามิเตอร์ฟังก์ชันปริมาณการสั่งซื้อ พารามิเตอร์เป็นตัวเลือกที่จะบอกว่าฟังก์ชั่นอาจไม่ประกอบด้วยพารามิเตอร์
  • ฟังก์ชั่นหลัก: ร่างกายทำงานมีชุดของฟังก์ชั่นพันธกิจที่กำหนดไว้

ตัวอย่าง

ต่อไปนี้เป็นแม็กซ์ () ฟังก์ชันในรหัสที่มาฟังก์ชั่นนี้จะใช้เวลาสองพารามิเตอร์ num1 และ num2 ซึ่งจะกลับมาใหญ่ของทั้งสองตัวเลขนับ:

/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2) 
{
   /* 局部变量声明 */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

ประกาศฟังก์ชัน

ประกาศฟังก์ชันบอกชื่อฟังก์ชันคอมไพเลอร์และวิธีการเรียกใช้ฟังก์ชันร่างกายที่เกิดขึ้นจริงของการทำงานสามารถกำหนดเป็นรายบุคคล

ประกาศฟังก์ชั่นรวมถึงส่วนต่อไปนี้:

return_type function_name( parameter list );

ที่กำหนดไว้ข้างต้นสำหรับแม็กซ์ฟังก์ชั่น () ดังต่อไปนี้คือการประกาศฟังก์ชั่น:

int max(int num1, int num2);

ในการประกาศฟังก์ชันชื่อของพารามิเตอร์ไม่สำคัญเพียงพารามิเตอร์ชนิดเป็นสิ่งจำเป็นดังนั้นต่อไปนี้เป็นคำสั่งที่ถูกต้อง:

int max(int, int);

เมื่อคุณกำหนดฟังก์ชั่นในแฟ้มแหล่งที่มาและเรียกใช้ฟังก์ชันในแฟ้มอื่นการประกาศฟังก์ชันเป็นสิ่งจำเป็น ในกรณีนี้คุณควรโทรด้านบนของไฟล์ฟังก์ชั่นการประกาศฟังก์ชัน

ฟังก์ชันการโทร

เมื่อมีการสร้างฟังก์ชัน C, ฟังก์ชั่นกำหนดสิ่งที่ทำแล้วทำงานให้เสร็จสมบูรณ์โดยการเรียกฟังก์ชั่นที่ได้รับการกำหนดไว้

เมื่อโปรแกรมเรียกฟังก์ชั่นการควบคุมโปรแกรมจะถูกโอนไปยังฟังก์ชั่นที่เรียกว่า เมื่อฟังก์ชั่นดำเนินงานที่กำหนดไว้ที่เรียกเมื่อคำสั่งตอบแทนการทำงานที่จะดำเนินการหรือการเข้าถึงฟังก์ชั่นที่สิ้นสุดวงเล็บโปรแกรมจะกลับมาควบคุมโปรแกรมหลัก

เมื่อคุณเรียกใช้ฟังก์ชันผ่านพารามิเตอร์ที่จำเป็นถ้าฟังก์ชั่นส่งกลับค่าคุณสามารถเก็บค่าตอบแทน ตัวอย่างเช่น:

#include <stdio.h>
 
/* 函数声明 */
int max(int num1, int num2);
 
int main ()
{
   /* 局部变量定义 */
   int a = 100;
   int b = 200;
   int ret;
 
   /* 调用函数来获取最大值 */
   ret = max(a, b);
 
   printf( "Max value is : %d\n", ret );
 
   return 0;
}
 
/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2) 
{
   /* 局部变量声明 */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

แม็กซ์ () ฟังก์ชันและ function () หลักคือการใส่ชิ้นรวบรวมซอร์สโค้ด เมื่อคุณเรียกใช้แฟ้มที่ปฏิบัติการขั้นสุดท้ายจะให้ผลลัพธ์ที่ต่อไปนี้:

Max value is : 200

อาร์กิวเมนต์ของฟังก์ชัน

หากคุณต้องการใช้พารามิเตอร์ของฟังก์ชันที่คุณจะต้องประกาศตัวแปรที่จะยอมรับค่าพารามิเตอร์ตัวแปรเหล่านี้เป็นที่รู้จักกันอย่างเป็นทางการพารามิเตอร์ของฟังก์ชัน

เช่นเดียวกับรูปแบบอื่น ๆ ของพารามิเตอร์ตัวแปรท้องถิ่นภายในฟังก์ชั่นจะถูกสร้างขึ้นเมื่อเข้าสู่ฟังก์ชั่นออกจากฟังก์ชั่นจะถูกทำลาย

เมื่อฟังก์ชั่นที่เรียกว่ามีสองวิธีที่จะผ่านพารามิเตอร์ให้กับฟังก์ชัน:

调用类型描述
传值调用 该方法把参数的实际值复制给函数的形式参数。在这种情况下,修改函数内的形式参数不会影响实际参数。
引用调用 该方法把参数的地址复制给形式参数。在函数内,该地址用于访问调用中要用到的实际参数。这意味着,修改形式参数会影响实际参数。

โดยค่าเริ่มต้น, Cโดยใช้การโทรโดยส่งผ่านพารามิเตอร์โดยทั่วไปนี้หมายความว่ารหัสภายในฟังก์ชั่นไม่สามารถเปลี่ยนพารามิเตอร์ที่เกิดขึ้นจริงที่ใช้ในการเรียกใช้ฟังก์ชัน