Bu yazıda, struct yapıları bir fonksiyon işlevine argüman olarak geçirmek için alakalı örnekler bulacaksınız ve bunları programınızda kullanabilirsiniz.
C’de, struct iki yöntemle fonksiyon işlevlere geçirilebilir:
Bir struct değişkeni, normal bir değişken gibi argüman olarak fonksiyon işlevine geçirilebilir.
struct yapı değerle geçirilirse, fonksiyon işlevi tanımındaki struct yapı değişkeni üzerinde yapılan değişiklikler orijinal olarak geçirilen struct yapı değişkeninde yansımaz.
Bir öğrenci struct yapı oluşturan, name ile roll içeren ve bilgileri görüntüleyen C programı.
#include <stdio.h>
struct student
{
char name[50];
int roll;
};
void display(struct student stu);
// Fonksiyon islevi prototipi, struct yapi bildiriminde asagida olmalidir
// aksi takdirde derleyici hata gosterir
int main()
{
struct student stud;
printf("Ogrencinin ismini giriniz: ");
scanf("%s", stud.name);
printf("Ogrencinin numarasini giriniz:");
scanf("%d", &stud.roll);
display(stud); // Yapisal degiskene ait sapmayi
return 0; // arguman olarak kabul etmek
}
void display(struct student stu){
printf("Cevap\nIsim: %s",stu.name);
printf("\nNumara: %d\n",stu.roll);
}