如何将整个结构作为参数传递给C语言函数?

将整个结构作为参数传递给函数-

  • 结构变量的名称作为函数调用中的参数给出。

  • 它收集在函数头的另一个结构变量中。

坏处

再次创建整个结构的副本,浪费内存

示例

以下程序演示了将整个结构作为参数传递给函数-

示例

#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