【发布时间】:2020-12-06 10:51:05
【问题描述】:
需要一些关于您认为在 C 中解析特定输入的最佳方法的提示。
输入的格式为xx xx xx xx xx xx xx y1 y2 y3 y4,其中xx和yy可以是从a到z的任意两个字符,但它们的含义不同。
xx 需要被视为“个人”并执行一些验证。
y0 需要被视为组合并具有不同的设置验证和操作。 (例如,需要同时验证 y1 和 y2,然后使用它们执行操作)。
我使用函数strtoken 来遍历xx 字符,因为它的分隔符是空格字符。但是对于第二部分,我需要更改该行为,因为代码需要知道 3 个连续的空格字符,这表明我们现在处于第二部分,并且需要开始验证 y 组合。
欢迎所有提示 :) 谢谢
【问题讨论】:
-
您可以使用
char *ptr = strstr(input, " ");找到中断的位置。如果找到,请在该点写入字符串终止符'\0',并使用两个字符串input和ptr+3。 -
我假设
xxs 或yns 的数量没有固定值?比如,它们的数量是可变的?是否至少有一个上限? -
嗨@Chase,
xx的数量确实是恒定的,但y's的数量却没有