一、儲存位置
1.指標:動態分配時存放在 堆上,非動態分配的時候初始化的時候分配到文字常量區。
2.陣列:分配到全域性靜態區或棧上
二、修改內容時
1.指標:不可修改常量字串中的字元,只能修改動態分配的字串中的字元。
char* p="abcd";
p[2]='k'; //error,編譯時可能檢查不出來,但是執行時會出錯。
char* p=new char[5];
p[2]='k'; //correct
2.陣列:其內容可修改。
三、複製與比較
char* p2="abc";
char* p1=new char[4];
strcpy(p1,p2);
p2="abcd";
cout<
2.陣列:也不能使用p1=p2來複製,也要使用strcpy,strcmp來複製比較。
char* p2="abc";
char p1[4];
strcpy(p1,p2);
p2="abcd";
cout<
陣列指標與指標陣列的區別
一 陣列指標 也稱行指標 定義 int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。如要將二維陣列賦給一指標,應這樣賦值 int a 3 4 int p 4 該語句是定義乙個陣列指標,...
陣列指標與指標陣列的區別
一 陣列指標 也稱行指標 定義int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。如要將二維陣列賦給一指標,應這樣賦值 int a 3 4 int p 4 該語句是定義乙個陣列指標,指...
陣列指標與指標陣列的區別
陣列指標 也稱行指標 定義 int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。如要將二維陣列賦給一指標,應這樣賦值 int a 3 4 int p 4 該語句是定義乙個陣列指標,指向...