【发布时间】:2020-03-25 08:05:21
【问题描述】:
我正在为我的班级做一个项目,但遇到了障碍。假设我有一个空格分隔的字符数组(字符串),其中包含数字(每个数字后跟一个空格字符)。假设它看起来像这样:
0 1 15 10 6 2
其中的项目数量永远不会恒定,因此我无法使用sscaf() 获取所有数字。我尝试将它作为字符循环,但我最终将两位数分开,搞砸了。
有人可以指导我如何获取字符串中的每个数字并将其保存到 int 数组而不分离两位数吗?我正在用 C 写这个
提前致谢
【问题讨论】:
-
你需要两个指针,一个头和一个尾。移动尾部直到你碰到一个空白空间,然后从头部减去尾部并分配一个新的字符 * 然后将所有字符从头到尾添加到新的字符 * - 这样做直到尾部位于字符串的末尾
-
您可以在
sscanf()s 返回值的帮助下遍历未知数量的数字。只是不要遵循常见的弊端来忽略它。
标签: c arrays string loops character