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

จะส่งที่อยู่ของโครงสร้างเป็นอาร์กิวเมนต์เพื่อทำงานในภาษา C ได้อย่างไร


ส่งที่อยู่ของโครงสร้างเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน -

  • ที่อยู่ของโครงสร้างจะถูกส่งผ่านเป็นอาร์กิวเมนต์ของฟังก์ชัน

  • มันถูกรวบรวมไว้ในตัวชี้ไปยังโครงสร้างในส่วนหัวของฟังก์ชัน

ข้อดี

  • ไม่มีการสูญเสียหน่วยความจำเนื่องจากไม่จำเป็นต้องสร้างสำเนาอีกครั้ง

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

ตัวอย่าง

#include<stdio.h>
struct date{
   int day;
   int mon;
   int yr;
};
main (){
   struct date d= {02,01,2010};
   display (&d);
   getch ();
}
display (struct date *dt){
   printf("day = %d\n", dt->day);
   printf("month = %d\n",dt->mon);
   printf("Year = %d",dt->yr);
}

ผลลัพธ์

day = 2
month = 1
Year = 2010