C语言strtok():分割字符串
strtok() 是 C语言的一个标准库函数,定义在
strtok() 用于将字符串分割成一系列的子串,函数的原型如下:
【实例】以下 C语言代码示例演示了 strtok() 函数的功能和用法。
<string.h>
头文件中。strtok() 用于将字符串分割成一系列的子串,函数的原型如下:
char *strtok(char *str, const char *delim);
参数
-
str:要分割的字符串。第一次调用 strtok() 时,这个参数应该是你想要分割的字符串。随后的调用应该将此参数设置为
NULL
,以便继续从上次的位置分割。 - delim:一个包含多个分隔符的字符串。这些字符被用作分隔符,将 str 分割成多个子串。
返回值
返回下一个子串的首地址,如果没有更多的子串,则返回NULL
。【实例】以下 C语言代码示例演示了 strtok() 函数的功能和用法。
#include <stdio.h> #include <string.h> int main() { char str[] = "Hello, World! Let's explore strtok."; const char *delimiters = " ,!."; // 获取第一个子串 char *token = strtok(str, delimiters); // 继续获取其他的子串 while (token != NULL) { printf("%s\n", token); token = strtok(NULL, delimiters); // 注意传递NULL来获取下一个子串 } return 0; }上述代码使用空格、逗号、感叹号和句点作为分隔符来分割字符串。输出结果如下:
Hello
World
Let's
explore
strtok