scanf()將新行char留在緩沖區中我有以下程序:int main(int argc, char *argv[]){ int a, b; char c1, c2; printf("Enter something: "); scanf("%d",&a); // line 1 printf("Enter other something: "); scanf("%d", &b); // line 2 printf("Enter a char: "); scanf("%c",&c1); // line 3 printf("Enter another char: "); scanf("%c", &c2); // line 4 printf("Done"); // line 5 system("PAUSE"); return 0;}正如我在C書中讀到的那樣,作者說scanf()在緩沖區中留下了一個新的行字符,因此,程序不會在第4行停止供用戶輸入數據,而是將新行字符存儲在c2中并移至第5行。是對的嗎?但是,這只發生在char數據類型中嗎?因為我沒有int在第1,2,3行中看到數據類型的這個問題。是不是?
- 3 回答
- 0 關注
- 655 瀏覽
添加回答
舉報
0/150
提交
取消
