gpt4 book ai didi

c - C 中可以处理不同输入形式(int 和 str)的程序

转载 作者:行者123 更新时间:2023-11-30 16:07:19 26 4
gpt4 key购买 nike

我必须从用户那里获取 3 个整数作为输入。但我的程序应该能够以字符串和 3 个单独的整数的形式获取该输入。

例如,它应该能够处理所有这些输入格式。

1 2 3

1, 2, 3

"1 2 3"

"1, 2, 3"

我有什么想法可以做到这一点吗?

也许我应该使用 fgets() 然后使用 sscanf() 并检查其返回值,并根据不同的情况执行不同的操作。但我没能让它发挥作用。

谢谢!

最佳答案

如果您只想获得由任何非数字分隔的 3 个数字组,您可以尝试:

char vals[3][40];
char *bp=input;
for(n=0; n<3; n++) {
for(dp=vals[n]; *bp && !isdigit(*bp); bp++);
for( ;isdigit(*bp); dp++, bp++) *dp = *bp;
*dp='\0';
}

可以添加一些检查......

关于c - C 中可以处理不同输入形式(int 和 str)的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59683602/

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