請問這個c 指標問題中的p2為什麼是最後這樣的結果

時間 2021-05-30 00:13:13

1樓:shzy

邱昊宇的回答比較細。我簡單的講講。

首先想乙個問題,為什麼printf函式穿的是值,scanf函式傳的是位址。因為c/c++裡,所有的函式呼叫都是「值傳遞」或者說「值拷貝/值構造」(暫不提引用)。所以為什麼要有指標,因為如果你想改變乙個變數的值,你就只有傳他的位址。

如果你想改變乙個指標的值,那就傳二級指標。回過頭來看你的問題,你甚至都不用看函式實現,只用看main函式裡那一行就知道答案了。鑑於大多數學校還在用vc6,應該不會出引用吧(

2樓:邱昊宇

剛進入 f() 裡的 for 迴圈時,大概是這個樣子的:

請忽略位址和位址之間的距離關係,隨手瞎編的所以在 f() 裡執行 p = &sum 相當於在圖中位於 0x7C 的格仔裡填上 0x72。這一舉動對於遠在 main() 裡位於 0x94 的那個 p2 和位於 0x9C 的 s 沒有任何影響。

所以 *p2 還是順著那個箭頭拿到位於 0x9C 格仔裡的 0。

這個c語言問題用指標該怎麼寫?

看到這個感覺是時候安利一波C 了,這貨名字裡面也帶著個C,讀作C Sharp。首先定義好字串 strings1 There is a tree behind the house strings2 A big tree is cut down there 接下來三步走戰略開始 第一步,單詞拆分並去重 ...

請問這個二維陣列指標怎麼理解?

barenice 二維陣列a 5 5 可以這樣理解 a陣列包含5個陣列a 0 a 1 a 2 a 3 a 4 a i 又包含5個陣列 a i 0 a i 1 a i 2 a i 3 a i 4 i 1,2,3,4 以矩陣的形式列出如下 a 0 a 1 a 2 a 3 a 4 然後,讓我們重溫一下這個...

請問這個C 程式設計題如何創新?

黎黎黎 對稱文法是3型文法的子集,寫個詞法分析器就行。想要創新,寫個基於對稱文法的解碼器。比如對稱文法 set abba tes 等價於 set ab可以用在短包通訊協議上。如果串列埠發來乙個短資料報包含資料xyz,則應當傳送xyzzyx,接受方必須收到xyzzyx,否則傳送不算成功。 柯煦 先用C...