c語言中的*和&符號
int main(void)
#執行結果
a=10
&a=0021f7c
b=0021f7cc
*b=10
一臉懵逼,為什麼&a和*b的值不是一樣?這才發現自己其實一點都沒有搞懂。
所以a本來代表兩個值:儲存單元的位址和儲單元中的資料。於是就有了二異性。為了消除這種二義性,c語言規定a表示儲存單元中的資料,&a表示儲存單元的位址。
a儲存單元中的資料可以是乙個普通數值,也可以是另乙個儲存單元的位址,比如:a = &b; 語句就是將b的儲存單元的位址存入a儲存單元中。c語言規定*a代表a中儲存的位址對應的儲存單元中的資料,也就是訪問*a就等於訪問b,於是*a提供了通過a訪問b中的資料的手段。
a表示a對應的儲存單元中的資料。
&a表示a對應的儲存單元的位址。
*a表示:首先,要求a對應的儲存單元中的資料一定是另乙個儲存單元的位址。於是,*a表示另乙個儲存單元中的資料。
C語言中的 和 符號
之前對 和 符號一直理解的比較淺顯。只知道 p好像表示的是乙個指標 p表示的是乙個位址。然而這次當遇到了下面這個情況的時候 int a 10 int b a printf d n a printf d n a printf d n b printf d n b 結果 10 6487620 64876...
C語言中的 和 符號
之前對 和 符號一直理解的比較淺顯。只知道 p好像表示的是乙個指標 p表示的是乙個位址。然而這次當遇到了下面這個情況的時候 int a 10 int b a printf d n a printf d n a printf d n b printf d n b 結果 10 6487620 64876...
C語言中的強符號和弱符號
c語言中的強符號和弱符號 c語言真的很奇怪,各種你想不到的問題都會出現,但是仔細分析這個問題,無不很有道理,這些都不是c語言的漏洞,而是這門語言的強大之處。首先介紹一下強符號和弱符號。當多個c檔案需要一起編譯執行的時候,就會有強弱符號的問題。為什麼會有多個c檔案一起編譯呢?這就的說起鏈結linkin...