c語言中scanfd ,a 和scanf da

2021-03-27 09:20:25 字數 1852 閱讀 1534

1樓:掃帚

那兩個回答對scanf的解說也太迷了,scanf後半部分寫的應該是乙個指標(位址)

如果a是乙個int變數,a = 1,儲存在記憶體的1234 5678h處,scanf(%d",&a)是正確寫法,表示將輸入讀到變數a所在的位址處,即記憶體的1234 5678h處

而在執行時scanf("%d",a)會發生錯誤,因為將輸入讀到了記憶體的0000 0001h處

2樓:隨偉春芳歇

scanf(%d",&a) 就是讀取整型變數a在記憶體中的位址 。

scanf("%d",a)就是讀取整型變數a的值。

printf("%d",a) 就是輸出整型a的值。

在c語言中,&是取位址運算子,&a表示獲取a在記憶體中的位址。%d 格式化輸出整數。scanf() 函式用於從標準輸入(鍵盤)讀取並格式化, printf() 函式傳送格式化輸出到標準輸出(螢幕)。

在c語言中,%f表示 格式化輸出浮點型資料。

例如:#include

int main()

3樓:我是不是師兄

&是取位址的意思 &a 是取出變數a的位址scanf(%d",&a) 就是讀取1個數字 寫入a的位址scanf("%d",a) 是讀取1個數字 寫入位址a 這個a如果是100 就寫到位址100 如果是200 就寫到位址200 顯然 這很危險 萬一a的儲存的值剛剛好是一些指令的位址什麼的 會寫到這個位址修改指令 就執行不下去了 出大錯

printf("%d",a) 就沒什麼了 把變數a的儲存的值輸出然後 &是取位址 所以你可以

printf("%d",&a) 這樣是輸出a的位址

4樓:燒餅頭

scanf是輸入,要在變數前加上&。printf是輸出,不用加&

c語言中scanf("%d",a)和scanf(%d",&a)在printf("%d",a)中到底有什麼區別

5樓:邴丹郭衣

&是取地來

址的意思

&a是取出變數源a的地bai址

scanf(%d",&a)

就是讀取du1個數字

zhi寫入a的位址

scanf("%d",a)

是讀取1個數字

寫入位址a

這個a如果是100

就寫到地dao址100

如果是200

就寫到位址200

顯然這很危險

萬一a的儲存的值剛剛好是一些指令的位址什麼的會寫到這個位址修改指令

就執行不下去了

出大錯printf("%d",a)

就沒什麼了

把變數a的儲存的值輸出

然後&是取位址

所以你可以

printf("%d",&a)

這樣是輸出a的位址

c語言 scanf("%d",&a) 和 printf("%d",&a) 有什麼不同 它們各自的含義是什麼?

6樓:匿名使用者

scanf("%d",&a),是輸入乙個整形數值給變數a,

printf("%d",&a),是列印a的位址。

如果去掉&,變成printf("%d",a),就是列印整形變數a的值了。輸出時一般是不加&的

7樓:匿名使用者

scanf(「%d」,&a)是輸入乙個整形變數;

printf(「%d」,&a)是輸出這個整型變數的位址。

8樓:聽海的聲音

printf不要取位址符&

9樓:匿名使用者

80445766

回答正確

在c語言中pd和x的區別,在c語言中p,d和x的區別是什麼?

x不要前導0,也就說前面的0會被自動去掉也可以用 08x列印出來跟 p一樣的 實際上是一樣的,不過 p是專用來處理指標的吧,而 x對列印的資料都可以,感覺差不多,就是用 p的時候列印出來都是8個資料的 計算機儲存的都是2進製,當然也可以用 d列印位址,列印指標,指標就是用來存放位址的 位址需要符號麼...

c語言中的整除和普通除如何區分,C語言中的整除和普通除如何區分

對於整數的除法叫做整除。例如 13 2 6,因為是整數運算所以結果必然是整數。13.0 2 6.5.浮點數運算,結果是浮點數。只知道這樣乙個區別 int a 5 int b 2 int c c a b 則c 2 可以問的詳細一點哈,沒怎麼看明白,是這個意思不?如果兩個數都是int,那就是整除,如果有...

C語言中ab是什麼意思,c語言中ab和ab分別是啥意思啊

a 異或 bai b 按位異或du 比如zhi a 為 5 0101b 為 7 0111 0010 物件位相dao同回為0,答 不同為1 按位異或運算子 是雙目運算子。其功能是參與運算的兩數各對應的二進位相異或,當兩對應的二進位相異時,結果為1。c語言中a b和a b分別是啥意思啊 a b是位運算中...