הקצאת זיכרון דינאמי
נדגים מה הצורך בזיכרון דינאמי:
void main(){
int n;
scanf(%d,&n);
int A[n];
הפקודה האחרונה לא חוקית!
למה?
* אסור שגודל מערך יהיה משתנה.
*אסור להגדיר משתנים אחרי שכבר כתבנו פקודות בתוכנית.
לכן יש שימוש בהקצאת זיכרון דינאמית!
- הקצאת זיכרון דינאמית היא האפשרות לייצר זיכרון (להקצות) במהלך ביצוע התוכנית.
- יש לעשות שימוש בספרייה <stdlib.h>
- יש לעשות שימוש בספרייה <stdlib.h>
אנחנו נשתמש בפקודות הבאות:
malloc - לבצע הקצאה חדשה
calloc - לבצע הקצאה חדשה + לאפס אותה
realloc - להגדיל/להקטין זיכרון דינאמי
free - לשחרר זיכרון דינאמי