English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا المثال، ستتعلم كيفية حفظ المعلومات المدخلة من قبل المستخدم باستخدام تخصيص ذاكرة التخزين الديناميكية.
لفهم هذا المثال، يجب أن تكون على علم بما يليبرمجة Cالموضوع:
هذا البرنامج يتطلب من المستخدم حفظ قيمة noOfRecords و تخصيص ذاكرة التخزين الديناميكية للمتغيرات بناءً على قيمة noOfRecords باستخدام دالة malloc().
#include <stdio.h> #include <stdlib.h> struct course { int marks; char subject[30]; }; int main() { struct course *ptr; int i, noOfRecords; printf("ادخل عدد السجلات:\n"); scanf("%d", &noOfRecords); // تخصيص ذاكرة التخزين لمتغير noOfRecords ptr = (struct course *)malloc(noOfRecords * sizeof(struct course)); for (i = 0; i < noOfRecords; ++i) { printf("ادخل اسم الموضوع واسم العلامة:\n"); scanf("%s %d", (ptr + i)->subject, &(ptr + i)->marks); } printf("عرض معلومات:\n"); for (i = 0; i < noOfRecords; ++i) printf("%s\t%d\n", (ptr + i)->subject, (ptr + i)->marks); عدد 0; }
نتائج الخروج
ادخل عدد السجلات: 2 ادخل اسم الموضوع واسم العلامة: البرمجة 22 ادخل اسم الموضوع واسم العلامة: الهيكلية 33 عرض المعلومات: البرمجة الهيكلية