Tôi đang học C và tôi đang sử dụng "getchar()" để ngăn chặn các cửa sổ lệnh để tôi có thể thấy các bài tập đang làm nhưng nó không hoạt động. heres một mẫu:Tại sao không getchar() chờ tôi nhấn enter sau khi scanf()?
#include <stdio.h>
int main()
{
int value;
printf("1. option 1.\n2. option 2.\n3. option 3.\n4. Exit\n\nMake an option: ");
scanf("%d", &value);
switch (value)
{
case 1:
printf("you selected the option 1.");
break;
case 2:
printf("you selected the option 2.");
break;
case 3:
printf("you selected the option 3.");
break;
case 4:
printf("goodbye");
break;
default:
printf("thats not an option");
break;
}
getchar();
return 0;
}
đây là kết quả:
- tùy chọn 1.
- tùy chọn 2.
- tùy chọn 3.
- Exit.
Thực hiện một lựa chọn: 1
bạn chọn tùy chọn 1.
Process trở 0 (0x0) thời gian thực hiện: 3,453 s
Nhấn phím bất kỳ để tiếp tục.
Tại sao nó không đợi đầu vào của "getchar()"?
Xem http://stackoverflow.com/questions/1384073/problem-with-flushing-input-stream-c/1384089. –