gpt4 book ai didi

c scanf integer 具有连续输入但只需要读取一个

转载 作者:太空宇宙 更新时间:2023-11-04 04:28:00 25 4
gpt4 key购买 nike

我得到了 12345679890 这样的输入,但我只想一次读取 1 个整数,即读取 1,然后读取 2,然后读取 3 ...,然后进行一些操作。但是,当我使用 scanf 时,它会读取所有数字,即 1234567890。有人可以帮忙吗?谢谢!!

这是我的代码

#include <stdio.h>

int main() {
int input;
scanf("%x",&input);

while (scanf("%x",&input)==1){}
}

最佳答案

12345679890 一个整数,您想要做的是一次读取一个数字。为此,您将使用格式字符串 %1u 而不是 %x

首先,%x 指定了一个十六进制 项,这意味着它将接受 af 作为好吧,%d 将允许使用您可能不想要的前导标志。

此外,您似乎在进入循环之前消耗(并丢弃)了第一个数字,因此您最好使用以下内容:

#include <stdio.h>

int main(void) {
unsigned int digit;
while (scanf("%1d", &digit) == 1) {
//doSomethingWith(digit);
}
return 0;
}

关于c scanf integer 具有连续输入但只需要读取一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39585406/

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