我是 C(和编程)的新手,我的问题可能可以通过一些基本的搜索和阅读来回答;如果存在问题,请指出问题的答案。
假设我想从用户那里读取一个可能大于 999 的数字。根据我的经验,如果我输入值 10,000(包括逗号),程序将读取数字直到逗号,然后停止输入。因此,输入将是 10 而不是 10000。
如何让它读作“10,000”,就好像它是 10000?
最佳答案
#include <stdio.h>
#include <stdlib.h>
void RemoveChar(char* Number, char chartoberemoved)
{
char *p, *s;
p = s = Number;
while (*s)//Run until last \r\n
{
if (*s != chartoberemoved)
{
*p++ = *s;
}
/* We always advance s. */
s++;
}
/* We 0-terminate p. */
*p = 0;
}
int main(int argc, char* argv[])
{
char array[32];
if (!argv[1])
return -1;
strcpy(array, argv[1]);
RemoveChar(array, ',');
int num = atoi(array);
printf("%d\n", num);
return 0;
}
关于c - 如何读取以逗号分隔的大于 999 的数字(例如 10,000)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47304565/