int size_of_daten = 5;
char *data[size_of_daten];
char *normal_Pointer = (char*)malloc(sizeof(char) * 100);
int i;
for(i=0; i<size_of_daten; i++) {
data[i] = (char*)malloc(sizeof(char) * 100);
}
data[0] = "0";
data[1] = "1";
data[2] = "2";
data[3] = "3";
data[4] = "4";
printf("data[2] %s\n",data[2]);
strcpy(normal_Pointer,data[2]);
for(i=0; i<size_of_daten; i++) {
free(data[i]);
}
free(data);
我只是嘗試這樣做......即使我釋放數組作爲我malloced它...我也抄data[2]
的價值和它沒有一點......讓不該」 T代表問題...釋放的雙指針
thx ...明白了...... – Fendrix
是否有任何方式來釋放例如數據[0] =「0」; ...或者只是指向NULL ...猜測不是在c有沒有垃圾回收器 – Fendrix
爲您管理文字字符串的內存:通常它是可執行文件的_data_部分的一部分,因此屬於只讀內存。所以他們會在你的程序的一生中存在。只管理你使用'malloc'分配自己的內存等。 – pb2q