爲了更好地理解變量在內存中的存儲細節,先來認識一下內存中的"字節"和"地址"。函數
0x表示的是十六進制,不用過於糾結,能看懂這些數字之間誰大誰小就好了spa
int b = 10; blog
int a = 20; 內存
int a; 編譯器
printf("a的地址是:%p\n", &a); io
在變量未經初始化以前,不要嘗試使用變量的值編譯
int a; 變量
printf("a的值是:%d\n", a); im
上面的寫法是不建議的數據
這也是在stdio.h中聲明的一個函數,所以使用前必須加入#include <stdio.h>。調用scanf函數時,須要傳入變量的地址做爲參數,scanf函數會等待標準輸入設備(好比鍵盤)輸入數據,而且將輸入的數據賦值給地址對應的變量
int age;
scanf("%d", &age);
scanf("%d-%d-%d", &a, &b, &c);
3個%d之間是用中劃線-隔開的,所以咱們在每輸入一個整數後都必須加個中劃線-,好比這樣輸入,否則在給變量賦值的時候會出問題
// 逗號,
scanf("%d,%d,%d", &a, &b, &c); // 輸入格式:10,14,20
// 井號#
scanf("%d#%d#%d", &a, &b, &c); // 輸入格式:10#14#20
// 字母x
scanf("%dx%dx%d", &a, &b, &c); // 輸入格式:10x14x20
scanf("%d %d %d", &a, &b, &c);
3個%d之間是用空格隔開的,咱們在每輸入一個整數後必須輸入一個分隔符,分隔符能夠是空格、tab、回車
scanf的第一個參數中不要包含\n,好比scanf("%d\n", &a); 這將致使scanf函數沒法結束
提示用戶輸入兩個整數n,而後計算並輸出兩個整數的和
內容來源:傳智播客