首先,還有一個問題是同一個標題,但提供的解決方案並不適合我。 Other questionscanf不在eclipse中的調試模式下輸入?
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a, b, c;
fflush(stdout);//suggested solution in other question
scanf("%d%d%d", &a, &b, &c);
printf("Values entered: %d %d %d\n", a, b, c);
return 0;
}
當我正常運行它時,代碼工作正常。
輸出
1 2 3
Values entered: 1 2 3
但是,當我在調試模式下運行沒有打印。當我將鼠標懸停在變量上時,它們具有這些值。
一個:56
B:6422420
C:6422420
另一種解決方案建議是把這個代碼在主方法的開始。
int ch;
while ((ch = getchar()) != '\n' && ch != EOF); //suggested solution #1
這篇文章中提出的兩種解決方案都不適合我。我分別嘗試了他們。
編輯
操作系統:Windows 10
編譯:MinGW的
什麼編譯器(Eclipse是*不是*編譯器)以及您正在使用什麼操作系統? –
我建議在命令行上編譯。 Eclipse只是向你隱瞞事情。 –
C和C++是不同的語言,在詢問您的程序時不會同時指定。 –