c 簡單問題

2022-09-05 00:40:48 字數 669 閱讀 6837

1樓:匿名使用者

r=j;這句錯了,你的第二行**宣告瞭一個引用變數,它返回的是對變數i的引用,這種引用變數在宣告並賦值後是不允許再讓它引用另一個變數的(要注意的一點是這種引用變數在宣告時一定要賦值)。還有*p=&r這句也錯了。&r返回的是一個地址,而*p返回的是變數i的值。

把一個地址賦值給一個int變數是不允許的。希望這麼說你能明白!

補充:為什麼*p=&r 錯了 int *p=&i沒錯呢?

int *p=&i這句沒錯,因為i是一個整型變數。表示p這個指標指向變數i,p是變數在記憶體中的地址。而*p=&r這句錯了,因為r本身就是引用變數i,&是取地址運算子。

它只能作用於一個變數而不是作用於一個引用變數。

2樓:匿名使用者

*p=&r;

指標賦值為地址

3樓:匿名使用者

*p=&r錯了應該是p=&r

4樓:匿名使用者

p是指標,*p是指標指向的內容。賦值的時候應該給指標直接賦值地址,或者申請動態空間再給*p賦值。

5樓:

此處 r=j ;也是錯的。

6樓:澄瑜蓓

好像*p=&r;錯吧。。。

是p=&r;

c語言簡單問題

可以檢視msdn srand 是初始化一個種子,就是說隨機數是從哪個數開始,常以系統內時間來初始化,即 srand unsigned time null randomize 是vbscript or pascal中的函式,容也是初始化的作用,預設是以系統時間為種子的,這是delphi help中的解...

C的簡單問題

foreach int i in arr 定義 foreach 函式 包括兩個引數 一個整型 i 一個陣列型指標 arr foreach就是陣列裡的自加 等同於for i 0 i 當然arr可能沒有lenght方法,但就是這個意思 int arr new int 宣告int 型的陣列 foreach...

C 簡單問題求解

此例中可以不括,但為了方便閱讀還是括好 是賦值語句 才是判斷是否相等 if flag 是良好書寫形式,此外int用 和!float用一個精度比較 指標和null比較 1.規範是每個 對應一個 如果if裡只有一條語句,可以不加 1.不是必要的,但是為了 的可讀性,還是加上比較好 2.if flag t...