char 的真正意義

2021-09-29 06:16:49 字數 777 閱讀 7452

一直以來我對此一無所知,我也一直在想這同一件事的兩種寫法有何意義,其中的奧妙容我慢慢道來。

char

* p;

// 這條語句宣告了乙個指向char型別的指標p,請注意,它沒有為*p 開闢空間,甚至*p在哪兒都是個問題

char p[

100]

;// 這條語句宣告了乙個指向char型別的指標p,同時,它為*p開闢了100個字元的空間

有意思的在後面

// 這種寫法是古老的,被淘汰的寫法,現代編譯器只是為了

//相容以前的錯誤**才允許執行的一種寫法,因為"abc" 是乙個常量,儲存在文字常量區

//也就是 const char* ,而const char *是無法轉變為 char* 的。這裡強制轉換的結果就是

//*p指向的量是無法修改的。

char

* p =

"abc"

;// 上面那句的正確寫法應該是這樣

const

char

*p =

"abc"

;// 那麼這種寫法也不對嗎?,非也,這時的"abc"不是常量,這裡編譯器把該語句解析為

// char p[4] = ;所以這裡的"abc"是儲存在棧區的。

char p=

"abc"

;//那麼以此推理,這種寫法中 p 也是儲存在棧區的。其本質是和字元陣列char 一樣。

string p =

"abc"

;

BF的真正意義

乙個小男孩對小女孩說 我是你的bf。女孩揚起童真的臉,問 什麼是bf?男孩嘻嘻笑道 是best friend的意思。後來,他們戀愛了。小夥子對姑娘說 我是你的bf。姑娘小鳥依人,害羞問道 什麼是bf呀?小夥子捧起姑娘的臉,深情道 是boy friend的意思。很幸運,幾年後,他們結婚了,有了可愛的孩...

人工智慧真正的意義?

現在很多人工智慧的裝置出現在我們身邊,別的不說,單單是智慧型手機就能夠給我們帶來很多的便利,可謂是機不離手。但是有的人對於人工智慧還是比較擔憂的,擔憂人工智慧持續發展早晚有一天會取代我們人類,讓我們成為人工智慧的奴役。但是現在人工智慧的研究依然是如火如荼地進行,那麼人工智慧真正發展的意義是什麼呢?下...

人工智慧真正的意義是什麼?

人工智慧真正的意義是什麼?現在很多人工智慧的裝置出現在我們身邊,別的不說,單單是智慧型手機就能夠給我們帶來很多的便利,可謂是機不離手。但是有的人對於人工智慧還是比較擔憂的,擔憂人工智慧持續發展早晚有一天會取代我們人類,讓我們成為人工智慧的奴役。但是現在人工智慧的研究依然是如火如荼地進行,那麼人工智慧...