strtok函数实现
时间: 2023-10-19 08:34:41 浏览: 119
strtok函数的使用示例
strtok函数是C语言中的字符串分割函数,它可以将一个字符串按照指定的分隔符进行分割,并返回分割得到的子字符串的指针。
下面是一个简单的示例代码来展示如何使用strtok函数来实现字符串分割:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello,World,How,Are,You";
char *token;
// 使用逗号作为分隔符进行分割
token = strtok(str, ",");
while (token != NULL) {
printf("%s\n", token);
token = strtok(NULL, ",");
}
return 0;
}
```
上述代码中,我们首先定义了一个字符串 `str`,然后使用 `strtok` 函数将它按照逗号分隔符进行分割。在第一次调用 `strtok(str, ",")` 时,函数将返回第一个子字符串 "Hello" 的指针,并且在原字符串 `str` 中将逗号替换成了空字符 '\0'。接下来,只需要传入 `NULL` 继续调用 `strtok(NULL, ",")`,函数将返回下一个子字符串的指针,直到所有的子字符串都被分割完毕。
在上述示例中,输出结果为:
```
Hello
World
How
Are
You
```
这样就完成了使用 `strtok` 函数实现字符串分割的功能。需要注意的是,传入 `strtok` 函数的原始字符串会被修改,所以如果需要保留原始字符串,可以先创建一个副本进行操作。另外,由于 `strtok` 使用了静态变量来保存当前的分隔位置,所以它在多线程环境下使用时需要注意线程安全问题。
阅读全文