如何从尾部到头部反向转动C字符串?
发布时间:2020-12-16 03:24:20 所属栏目:百科 来源:网络整理
导读:我想我需要一个反向版本的strtok,比如: char* p = rstrtok(str,delimeters); 例如,使用“_-”的分隔符集在字符串“hello stack_over-flow”中依次获
我想我需要一个反向版本的strtok,比如:
char* p = rstrtok(str,delimeters); 例如,使用“_-”的分隔符集在字符串“hello stack_over-flow”中依次获取’ – ‘,’_’和”的位置 我只关心分界符和它们的位置(不是它们之间的内容),所以我想boost :: split_iterator在这里不合适. 我可以利用现有的实用功能吗?或任何解决这种情况的解决方案? (我搜索了“反向strtok”,但只是“堆叠流过”到“流过堆栈”的东西…) 解决方法
你可以用strpbrk做到这一点:
char string[] = "hello+stack_over-flow"; char *pos = string; while (*pos != ' ' && (pos = strpbrk(pos,"+-_")) != NULL) { /* Do something with `pos` */ pos++; /* To skip over the found character */ } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |