03-03-2012, 22:19
|
|
|
|
חבר מתאריך: 14.07.06
הודעות: 2,115
|
|
שאלה בשחרור זכרון (פונקציית free)
אם אני כותב לדוגמא
קוד:
char* filename;
filename = (char*)malloc(sizeof(char)*size);
sprintf (filename,"%d.txt",num);
free (filename);
אז הוא עושה לי שגיאה בזמן ריצה.. בגלל הSPRINTF? איך זה קשור אבל?
שאלה שניה..
כשאני מקצה זיכרון לקובץ לדוגמא
קוד:
FILE** fp;
fp = (FILE**)malloc(sizeof(FILE*)*num);
for (i=0;i<num;i++)
free(fp[i]);
זה לא עובד... מספיק שאני אעשה :
קוד:
for (i=0;i<num;i++)
fclose (fp[i]);
?
|