Truyền toàn bộ struct cho hàm:
- Tên biến struct được đưa làm đối số khi gọi hàm.
- Được nhận vào biến struct khác trong header hàm.
Nhược điểm
Tạo bản sao toàn bộ struct, lãng phí bộ nhớ.
Chương trình
Chương trình minh họa truyền toàn bộ struct cho hàm:
#include<stdio.h> //Khai báo struct// struct add{ int var1; int var2; }a; //Khai báo và trả về hàm// void show(struct add a){ //Khai báo biến tổng// int sum; //Phép toán// sum=a.var1+a.var2; //In kết quả// printf("Added value is %d",sum); } void main(){ //Khai báo struct// struct add a; //Nhập dữ liệu// printf("Enter variable 1 = "); scanf("%d",&a.var1); printf("Enter variable 2 = "); scanf("%d",&a.var2); //Gọi hàm// show(a); }
Kết quả
Enter variable 1 = 30 Enter variable 2 = 40 Added value is 70