gpt4 book ai didi

c - 读取 STDIN 时出现问题

转载 作者:行者123 更新时间:2023-11-30 15:37:59 25 4
gpt4 key购买 nike

我正在尝试使用 scanf 通过 stdin 读取整数,但是当我尝试运行代码时,它希望我输入整数而不是读取该行。

int x = 0;
int y = 0;
scanf("%d", &x);
while (x != '\n') {
y += x;
scanf("%d", &x);
}

为什么我的代码无法读取标准输入中的内容?

最佳答案

你没有说它是如何崩溃的,但这些行:

scanf("%lld", &x);
while (x != '\n') {
...
}

将一个长整数读入x,然后执行while循环,除非您输入的数字是10(ascii for \n) 。我很确定这不是您想要的,但很难知道您到底想要什么。

您是否尝试循环直到没有输入数字?如果是这样,也许检查 scanf() 的返回值。

请注意,每次调用 scanf() 都会读取一行。

关于c - 读取 STDIN 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21974456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com