回覆列表
  • 1 # 方片龍

    如果只是單純的傳入a的話,只是作為值傳遞,在scanf方法中,無法對你所傳入的外部變數a的值進行實質的修改,而如果是傳入地址的話,scanf方法中可以對這個地址所對應的記憶體區域進行賦值操作,也就是我們想要的結果,對外部變數a進行賦值操作。所以是要傳入地址的

  • 2 # 紅髮色魔亞特魯

    這個符號加上一個變數名其實不是取地址,它代表的是一個指標,指向這個變數名在記憶體中的位置,如果不加就不能對這塊記憶體進行操作。。

  • 3 # 奇緣C碼

    a 變數如果是指標型別的,就不用加取址符呀,因為函式引數要求給指標型別的,你定義一個整型變數,所以,要轉一下。

  • 4 # 雪人158607

    我自己的理解吧,不知道對不對,這個函式的意思是從鍵盤獲取資料存到記憶體裡,你直接取到他的地址然後存東西感覺更合理吧,就比如你要搬到一個新家,你肯定得知道你的新家的地址,你才能直接搬進去,而像print函式,你想用哪個變數,你只需要知道變數的名字就夠了,就好比我要在一個村子找你,我不需要必須知道你家地址,我可以在村口大聲叫你的名字就能找到你

  • 5 # 黑鳳棃丶

    一般情況下是要有的,但是,如果你要輸入一個數組的話,後面就不需要&了。因為陣列的第一個就代表了地址。

  • 6 # 黑俠客11467146

    在c語言中,加入這個符號,相當於是把a變數的地址傳入函式,scanf屬於被呼叫函式,函式內部設計的就是對透過指向變數a的指標進行操作,透過指標來進行賦值操作。

  • 7 # EricYang95

    地址的話可以統一函式的形式.不用擔心這個是8位16位32位陣列等等.另外可以保證顯示出來的是該地址最後被更新的值.

  • 8 # 紅塵匆匆過客夢

    c語言的函式引數有兩種:傳址呼叫,傳值呼叫,scanf引數之所以加&地址符,表示傳址呼叫,這樣才能在呼叫函式返回後儲存輸入值,否則傳值呼叫在函式返回後不能得到輸入值

  • 中秋節和大豐收的關聯?
  • 打遊戲時你遇到過噴子嗎?