ส่งผ่านโครงสร้างทั้งหมดเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน -
-
ชื่อของตัวแปรโครงสร้างถูกกำหนดเป็นอาร์กิวเมนต์ในการเรียกใช้ฟังก์ชัน
-
มันถูกรวบรวมในตัวแปรโครงสร้างอื่นในส่วนหัวของฟังก์ชัน
ข้อเสีย
สำเนาของโครงสร้างทั้งหมดถูกสร้างขึ้นอีกครั้งโดยสิ้นเปลืองหน่วยความจำ
โปรแกรม
โปรแกรมต่อไปนี้แสดงให้เห็นถึงการส่งผ่านโครงสร้างทั้งหมดเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน -
#include<stdio.h>
//Declaring structure//
struct add{
int var1;
int var2;
}a;
//Declaring and returning Function//
void show(struct add a){
//Declaring sum variable//
int sum;
//Arithmetic Operation//
sum=a.var1+a.var2;
//Printing O/p//
printf("Added value is %d",sum);
}
void main(){
//Declaring structure//
struct add a;
//Reading User I/p//
printf("Enter variable 1 = ");
scanf("%d",&a.var1);
printf("Enter variable 2 = ");
scanf("%d",&a.var2);
//Calling function//
show(a);
} ผลลัพธ์
Enter variable 1 = 30 Enter variable 2 = 40 Added value is 70