Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

คุณหมายถึงอะไรโดยฟังก์ชัน return ในภาษา C?


ฟังก์ชันคือบล็อกที่มีอยู่ในตัวเองซึ่งทำหน้าที่เฉพาะเจาะจง

ข้อดีของฟังก์ชันในภาษาซีมีดังนี้ −

  • การนำกลับมาใช้ใหม่ได้

  • โปรแกรมความยาวลดลงได้

  • ง่ายต่อการค้นหาและแยกฟังก์ชันที่ไม่ถูกต้อง

  • อำนวยความสะดวกในการเขียนโปรแกรมโมดูลาร์จากบนลงล่าง

ตัวอย่าง

ต่อไปนี้เป็นโปรแกรม C สำหรับฟังก์ชัน -

#include<stdio.h>
/*Function prototypes*/
myfunc();
main(){
   myfunc();
}
/*Function Defination*/
myfunc(){
   printf("Hello \n");
}

ที่นี่

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

  • ค่าที่ส่งคืนนี้มีประเภท int, float, char หรืออย่างอื่น

  • ประเภทของฟังก์ชันเริ่มต้นคือจำนวนเต็ม

ตัวอย่าง

โปรแกรมอื่นสำหรับฟังก์ชันมีดังนี้ -

int total (){
   int a,b,c;
   a=10;
   b=20;
   c=a+b;
   return c; //it returns the c value i.e. prints the result
}

ผลลัพธ์

เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −

30

แทนที่จะเขียนสองขั้นตอน

c=a+b;
return c;

เราสามารถแทนที่ด้วยขั้นตอนเดียวเช่น return a+b;

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

ตัวอย่างโปรแกรม

รับด้านล่างเป็นโปรแกรม C สำหรับฟังก์ชันส่งคืน -

int main(){
   ---
   ---
   ---
   return 0;
}

ค่าเริ่มต้นที่ส่งคืนสำหรับประเภทจำนวนเต็มคือ 0

ถ้าคุณไม่ใส่ return 0 หรือค่าอื่นใดในฟังก์ชัน main() a ของคุณ 0 จะถูกส่งกลับโดยอัตโนมัติ

หากคุณต้องการคืนค่า int ในฟังก์ชันของคุณ ขอแนะนำให้ระบุค่าที่ส่งคืนในส่วนหัวของฟังก์ชัน

การกลับจากฟังก์ชัน

ฟังก์ชันส่งคืนค่าเดียวโดยใช้คำสั่ง return

หากมีการเปลี่ยนแปลงภายในฟังก์ชันกับตัวแปร แสดงว่าการเปลี่ยนแปลงนั้นอยู่ในฟังก์ชันนั้น ตัวแปรของฟังก์ชันการเรียกไม่ได้รับผลกระทบจากการกระทำของฟังก์ชันที่เรียก

ฟังก์ชันการเรียกเลือกที่จะละเว้นค่าที่ส่งคืนโดยฟังก์ชันที่เรียก ตัวอย่างเช่น ค่าส่งคืนของ printf และ scanf มักจะถูกละเว้น

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