C取地址符和指標問題

2021-08-16 11:06:58 字數 630 閱讀 3263

1樓:金色潛鳥

c/c++ 中形式邏輯不成立。外貌 一樣的 東西,放在宣告裡 和 放在 語句裡 意思可能 不同。

例如:int a=2; // 這是宣告,a 是普通的整型變數, 初始化 為 2

int *p; // 這是宣告,p 是指標,可用於指向整型變數

p = &a; // 語句, &a 是 a 的 地址, p 是 指標 p 指向的地址

x = *p+2; //語句, *p 是 值

錯誤形式: x = *a +2; 因為語句中 沒 有 *a 這種形式

錯誤形式: y = &p; 因為語句中 沒 有 &p 這種形式

*****=

&取地址符 用於普通的變數。

*指標的值,語句中 用於指標的變數。

*****=

int a[3]=; // 這是宣告, a 是陣列。

int *p=a; // 這是宣告,p 是指標,初始化指向 陣列 a 的始地址, a 是地址!

p = &a[2]; // 語句, p是地址, &a[2] 是陣列元素的地址。

2樓:匿名使用者

& 是取地址的

*是取內容的

C語言指標問題,C語言指標問題

這個演算法最後的時候 p和q都是指向a的,在最後這個時候a的結構是,q之前的是所有的除了版 之外權 的字元。q之後的都是原來a裡面的資料,對於這個時刻是髒資料。最後把q指向的那個位置賦值為 0可以在遍歷a的時候,不遍歷到髒資料,而這個時候p正好指向的就是 0,所以 q p 迴圈結束條件是 p 0,因...

c指標變數的問題,C語言指標變數大小的問題

p 1,是把1賦值給p所指向的物件,而p 1是把1賦值給p,這個1是被當做位址的。p 1和p 1是不同的概念,p 1 是賦值語句,還有在c語言中 1 0 是作為真假來用的,就相當於布林型數一樣。這兩個語句都是合法的。區別就是指標 的意思是取位址的意思。p是乙個指標,他的值是記憶體中一塊記憶體的位址,...

C語言這個F函式再指標C語言指標問題

28f為傳值呼叫。所以f中的修改不影響main中變數的值。輸出的還是原始值。即 4,3,5 選d29 a 4b a q b w q b q null a q 0 由於q已經賦值為null,再對 q賦值會引起程式崩潰。這個不對 b w p 指標間賦值,正確。c p a 也就是a a 正確。d p w ...