字元指標和字元陣列

2021-07-16 08:24:31 字數 1253 閱讀 3180

所有的字串常量都被放在全域性區的靜態儲存區

這歌筆記只為說明乙個問題

char

str1

="abcd"

;

char

str2

="abcd"

;

const

char

str3

="abcd"

;//被const修飾的陣列,如果是區域性變數是存放在棧上的唯讀陣列,不能修改

const

char

str4

="abcd"

;

const

char

str5

="abcd"

;

const

char

str6

="abcd"

;

char

*str7

="abcd"

;

char

*str8

="abcd"

;

cout

<<(

str1

==str2

)<<

endl

;//0

cout

<<(

str3

==str4

)<<

endl

;//0

cout

<<(

str5

==str6

)<<

endl

;//1

cout

<<(

str7

==str8

)<<

endl

;//1

str1、str2、str3、str4是陣列變數,他們有各自的儲存空間,字元陣列作為區域性變數存放在棧上。

str5、str6、str7、str8是指標,「abcd是存放在靜態儲存區裡面而且是全域性的,他們指向同一塊記憶體空間,所以位址是一樣的」

字元陣列和字元指標

字元陣列是一段記憶體空間 字元指標是乙個位址,指向一串字元。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...