Bu örnekte, dinamik bellek tahsisini kullanarak kullanıcı tarafından girilen bilgileri kaydetmeyi öğreneceksiniz.
Bu örneği anlamak için, aşağıdaki C programlama konuları hakkında bilgi sahibi olmalısınız:
- C İşaretçiler
- C Dinamik Bellek Tahsisi
- C yapısı
Bu program kullanıcıdan , fonksiyonu kullanarak dinamik olarak yapı değişkenlerinin değerini saklamasını noOfRecords
ve hafızayı tahsis etmesini ister .noOfRecords
malloc()
Yapı için Dinamik Bellek Tahsisini Gösterin
#include #include struct course ( int marks; char subject(30); ); int main() ( struct course *ptr; int i, noOfRecords; printf("Enter the number of records: "); scanf("%d", &noOfRecords); // Memory allocation for noOfRecords structures ptr = (struct course *)malloc(noOfRecords * sizeof(struct course)); for (i = 0; i subject, &(ptr + i)->marks); ) printf("Displaying Information:"); for (i = 0; i subject, (ptr + i)->marks); return 0; )
Çıktı
Kayıtların sayısını girin: 2 Sırasıyla konunun adını ve işaretleri girin: Programlama 22 Sırasıyla konunun adını ve işaretleri girin: Yapı 33 Bilgi Görüntüleme: Programlama 22 Yapı 33