帮助C中的基本阅读用户输入

时间:2011-09-24 19:29:09

标签: c input integer

我目前正在学习C和一个项目,我需要读取用户的整数输入。目前我使用的代码如下:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{

    int a, b;

    printf("Please enter your first number");
    while((a = getchar()) != '\n') {
    }

    printf("test");

    return 0;
}

我不知道如何使用getchar获取数字,然后将其存储在我可以使用的变量中。 另外我在while语句中使用='\ n',因为我真的不明白EOF是如何工作的(如在K&amp; R书中),因为无论何时我使用EOF我都会进入这个循环,我无法摆脱。

感谢任何人提供的任何建议。

2 个答案:

答案 0 :(得分:4)

您可以使用scanf。

看一下这个例子:

printf("Please enter your first number ");
int number=0;
scanf ("%d",&number);

答案 1 :(得分:0)

我上面的scanf答案是正确的,但如果你还没有读过地址或格式化字符串,可能很难理解。

您可以通过从中减去'0'将您的角色转换为等效的整数:

char c = getchar();
int n = c - '0';