c语言strtok()
时间: 2023-12-26 17:27:45 浏览: 64
C语言切割多层字符串(strtok_r strtok使用方法)
c语言中的strtok()函数用于将字符串分割成一系列子字符串。它接受两个参数:要分割的字符串和分割符。函数会将字符串按照分割符进行分割,并返回第一个子字符串的指针。之后,每次调用strtok()函数时,它会返回下一个子字符串的指针,直到所有子字符串都被返回。
以下是一个示例代码,演示了如何使用strtok()函数将字符串分割成多个子字符串:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, World! This is a test.";
char delimiters[] = " ,.!"; // 分割符为逗号、空格和句号
char *token = strtok(str, delimiters); // 第一次调用strtok()函数
while (token != NULL) {
printf("%s\n", token);
token = strtok(NULL, delimiters); // 后续调用strtok()函数
}
return 0;
}
```
运行上述代码,输出结果为:
```
Hello
World
This
is
a
test
```
该代码首先将字符串"Hello, World! This is a test."赋值给字符数组str,并将分割符" ,.!"赋值给字符数组delimiters。然后,通过第一次调用strtok()函数,将字符串分割成第一个子字符串"Hello",并返回其指针。之后,通过循环调用strtok()函数,将字符串分割成剩余的子字符串,并逐个打印输出。
阅读全文