如何使用结构元素将各个成员作为参数传递给函数?
可以通过三种方式将结构的值从一个函数传递到另一个函数。它们如下-
将单个成员作为函数的参数传递。
将整个结构作为参数传递给函数。
将结构的地址作为函数的参数传递。
现在,让我们看看如何将结构元素的单个成员作为函数的参数传递。
每个成员在函数调用中作为参数传递。
它们被独立地收集在函数标题中的普通变量中。
例子1
下面给出的是一个C程序,用于演示将结构的各个参数传递给函数-
#include<stdio.h>
struct date{
int day;
int mon;
int yr;
};
main ( ){
struct date d= {02,01,2010}; //结构日期d;
display(d.day, d.mon, d.yr);//将单个内存作为参数传递给函数
}
display(int a, int b, int c){
printf("day = %d\n", a);
printf("month = %d\n",b);
printf("year = %d\n",c);
}输出结果执行以上程序后,将产生以下结果-
day = 2 month = 1 year = 2010
例子2
考虑另一个示例,其中,下面说明了一个C程序来演示将结构的各个参数传递给函数的过程-
#include <stdio.h>
#include <string.h>
struct student{
int id;
char name[20];
float percentage;
char temp;
};
struct student record; //全局结构声明
int main(){
record.id=1;
strcpy(record.name, "Raju");
record.percentage = 86.5;
structure_demo(record.id,record.name,record.percentage);
return 0;
}
void structure_demo(int id,char name[],float percentage){
printf(" Id is: %d \n", id);
printf(" Name is: %s \n", name);
printf(" Percentage is: %.2f \n",percentage);
}输出结果执行以上程序后,将产生以下结果-
Id is: 1 Name is: Raju Percentage is: 86.5