【发布时间】:2016-06-24 23:57:45
【问题描述】:
我在单个 char* 变量中有几组值,例如:
char* a1 = "1234 4567 789";
char* a2 = "123 445";
它们由空格分隔。
我正在尝试从 char* 中检索最后一组值,例如 789 和 445,但我不太确定如何执行此操作。
我目前正在这样做:
trimmed[strchr(trimmed, ' ') - trimmed] = '\0';
这只会让我获得第二组值,如果输入超过 2 个,则该值不起作用。
无论输入是 1 个还是 3 个,是否有一种好方法可以提取最终的一组值?
【问题讨论】:
-
您接受的答案是错误的。我用
strchr()的代码更新了我的答案。好问题顺便说一句,+1。 -
您应该使用
strrchr,它完全符合您的要求,而不是strtok或strchr。
标签: c string algorithm pointers