關於字元陣列和字元指標

2021-10-18 11:46:35 字數 411 閱讀 7108

#include

void

main()

對於字元陣列a,其中的內容是可以改變的。可以再次對某個元素賦值

如 a[2]=『r』; 正確

a中存放首字元的位址,但不可被改變。

a=「adeafsa」; 錯誤

對於字元指標變數p,它指向了乙個字串常量,而常量被儲存在常量區,是不可改變的

如*p=『r』; 錯誤

不過可以對指標變數p整體賦新值

如p=」olmesa「 ; 正確

p=a; 正確

造成這種結果的原因在於字串常量是有返回值的,其返回值是首字元的位址。

對於strcat(dst,src)和strcpy(dst,src) 如果dst中的位址指向的是常量區肯定是不對的。

字元陣列和字元指標

字元陣列是一段記憶體空間 字元指標是乙個位址,指向一串字元。char str abcd char str abcd 字元陣列是一段記憶體空間 字元指標是乙個位址,指向一串字元 char str abcd char str abcd 上面這兩跳複製語句很相似,其實根本就不是一碼事。對於兩個 abcd ...

字元指標和字元陣列

1.字元指標可以指向乙個字串。我們可以用字串常量對字元指標進行初始化。例如,有說明語句 char str this is a string.是對字元指標進行初始化。此時,字元指標指向的是乙個字串常量的首位址,即指向字串的首位址。這裡要注意字元指標與字元陣列之間的區別。例如,有說明語句 char st...

字元陣列和字元指標

1.在函式getmem棧內定義個陣列,將位址return給main函式的指標str eg char p hello world char getmemory void char p hello world return p void test void char str null str getme...