c - 将数据与用户输入分开。

标签 c linux gcc command-line-interface user-input

我正在编写一个程序,它接受命令,然后根据命令返回结果。例如,我有命令“prime 20”,它给出 20 个素数,其他命令是 sort 1 20 31 45,它将按降序对数字进行排序。这将在 while(1) 循环中运行。我有很多这样的命令,我想将每个数字分开,例如 1,20,31,45。我的问题是如何解析这些命令中的数据?我正在 char* 中输入,但是当我访问 i 索引来获取数字时,如果它有一个数字,它只会给我第一个数字。 谢谢。

最佳答案

您正在寻找使用函数“strtok”将空格分成许多单独的字符串,并使用“atoi”函数将 ASCII 中的数字转换为 Int 链接中的网站给出了使用 strtok 函数的示例,因为仅阅读该函数的 man 可能会有点难以理解。

关于c - 将数据与用户输入分开。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44464294/

相关文章:

C++ 11 GCC 4快速优化不在堆栈中存储抽象类的实现类

c++ - 为什么在写入不够大的 malloc 内存时 strcpy "work"?

c - 第二个 scanf 不会运行,程序刚刚终止。 C

c - fork 程序输出

c - C 中的函数参数在函数调用后未修改

linux - Hashicorp Vault——只创建授权 token ,不读取 secret

Linux:如何使用 pac 脚本设置代理

Python 扫描网络 IP 地址和 mac

c - 段中的变量分配

c - 如何在 C 中将多个字符串值存储到一个字符串中?