c語言面試題絕對地址賦值問題,C語言面試題 絕對地址賦值問題

時間 2021-09-12 17:10:17

1樓:id雞蛋炒韭菜

ptr是int*型別,就是整形指標,所以是int*,如果直接ptr = int 0xaa55;那樣編譯器會報錯誤

2樓:匿名使用者

如果直接ptr=0xaa55,由於0xaa55是個整數常量,型別不匹配(事實上無法編譯)。

所以要強制轉換成匹配的型別,告訴編譯器,0xaa55是個整數變數的地址。

另外你後面的** *ptr=0xaa55;是錯誤的,是將0xaa55儲存到ptr的值所指向的地址,而ptr的值未初始化,裡面的地址是不確定的,會引起程式崩潰。

關於c語言指定地址寫資料的問題

3樓:高金山

有啥好模糊的呢?

假如:int *p=(int*)0x12ff00;//外部地址

*p=10;//直接這樣寫就行了啊!

4樓:匿名使用者

首先向代表輸出地址的變數賦值,選定輸出地址

然後向輸出變數賦值,向外部地址裡寫資料

c語言的賦值問題,C語言指標的賦值問題

上面的說法中,都存在錯誤或不足.1.首先 c a b 的意義是把 a 和 b 這兩個變數的內容 5 和 6 相加得 11,再把 11 這個結果值傳送至 變數 c 所在的儲存單元儲存起來 而不是你想像的 將 a 和 b 這兩個變數組合為一個變數作為 c,或者複製一份變數組合再作為 c.當你用int a...

c語言判斷直接賦值問題,C語言 判斷直接賦值問題

首先判斷y是否大於z,若大於,則執行 x 2這個語句,並把x 2的值賦給x 若小於,則先執行x 2,然後將x 2的值賦給x,然後執行逗號表示式,得到的值為2 最後一個,但對結果沒有影響,由於 的優先順序要大於逗號表示式的優先順序,所以語句會先賦值,然後進行逗號執行 先執行 y z 如果是真,則執行x...

c語言陣列賦值問題,c語言中如何給陣列定義並賦初值?

靈凍冰晶霜月 我不清楚你想問什麼,不過第二種寫法是對的。char chars 11 是定義了一個初始值為空總數為11的字元陣列。char s c language 定義一個總數為11的字元陣列,但是有初值。注意是11個不是10個,用這種方定義的字元陣列末尾會加一個 0。陣列的賦值通常是使用花括號來表...