strsep的使用例子
时间: 2024-09-20 13:08:20 浏览: 25
C语言分隔字符串函数接口strsep
5星 · 资源好评率100%
`strsep`是一个非标准C函数,主要用于处理由`strtok`生成的剩余部分,因为`strtok`在内部维护了一个指向当前分隔符之后位置的指针。如果直接再次调用`strtok`,它会继续从上次停止的地方开始分割,而不是从原始字符串开头。这里有一个简单的`strsep`使用示例:
```c
#include <stdio.h>
#include <string.h>
// 假设我们有一个原始字符串
char* str = "Hello,World! This is an example.";
// 第一次调用strtok
char* token = strtok(str, ", !");
// 此时token指向"Hello,",而strsep会更新指针
char* next_token = strsep(&str, ", !");
while (token != NULL) {
printf("Token: %s\n", token);
// 再次获取下一个token,如果没有更多,则next_token为NULL
token = strtok(NULL, ", !");
if (next_token != NULL) {
printf("Next Token: %s\n", next_token);
next_token = strsep(&str, ", !");
}
}
// 注意,str现在已经被截断,所以第二次strtok会失败,返回NULL
```
在这个例子中,`strsep`用于清理`strtok`留下的工作,确保下次`strtok`从原始字符串的新位置开始。
阅读全文