close
char *array=new char[n];
c++以delete array釋放*array指標,字串動態記憶體陣列可正確將指標*p的內容值 與 p的地址值 釋放.
char p = (char *)malloc( sizeof(char)) ;
c以free(array)釋放*array指標,字串動態記憶體陣列無法將指標*p的內容值 與 p的地址值 釋放.
動態指標可宣告為陣列,但一般指標不能宣告為陣列.
指標a指向動態配置陣列,與指標a指向另一個已存在的陣列意義不同.??????
int *a=new int [5];
執行配置動態指標整數陣列a的釋放delete a後,a陣列的地址與元素值依舊存在.
配置動態指標整數陣列a指向NULL時;只能輸出每個陣列元素地址,NULL的地址(同時也是a與a[0]陣列的地址)為0,下一個元素地址a[1]的地址為a[0]的地址再加上資料型態的大小,依此類推(a=&a[0]=0,&a[1]=0x4,&a[1]=0x8.....),但無法顯示在NULL位置時的值.否則程式執行會產生錯誤.
全站熱搜