getchar()立即返回

时间:2014-05-07 12:06:28

标签: c getchar

我在Visual Studio 2013 Express for Desktop中编写C语言,当我使用getchar()时,它会立即终止。

以下是代码:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main()
{
    int num1, num2;
    printf("Enter first number: ");
    scanf("%d", &num1);
    printf("Enter second number: ");
    scanf("%d", &num2);
    printf("Result: %d\n", num1 + num2);
    printf("Press any key to exit...");
    getchar();
}

打印完最后一个字符串后,即使我使用了getchar(),程序也会立即退出而无需等待任何按键操作。

getchar()应该等待按键(字符输入),然后继续? 为什么它会自动继续并退出程序,而无需等待按键?

1 个答案:

答案 0 :(得分:-1)

解决方案是最后两次致电getchar();,或者改为使用fgets();

问题是,当您在控制台上输入字符时,实际上每次都会输入一个额外的换行符。