strtok 是 C 语言中的一个字符串处理函数,用于将一个字符串分割成若干个子字符串。它的原型定义在 <string.h> 头文件中。

函数原型: char *strtok(char *str, const char *delim);

函数参数:

  • str:需要分割的字符串,第一次调用时传入待分割的字符串,后续调用传入 NULL。
  • delim:分割字符串的分隔符,可以是一个字符串,也可以是多个字符的组合。

函数返回: 返回分割后的子字符串,如果没有找到分隔符,则返回 NULL。

函数使用: strtok 函数会从待分割的字符串中找到第一个分隔符,并将其替换为字符串结束符 \0,然后返回分割前的子字符串的指针。下一次调用 strtok 时,传入 NULL 作为第一个参数,则会接着上一次的位置继续分割。

需要注意的是,strtok 函数会修改原始的字符串,因此如果需要保留原始字符串,可以先将其拷贝到一个新的字符串中再进行分割。

示例代码:

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "Hello World! This is a test.";
    char *token;

    // 第一次调用,传入待分割的字符串
    token = strtok(str, " ");

    // 后续调用,传入 NULL
    while (token != NULL) {
        printf("%s\n", token);
        token = strtok(NULL, " ");
    }

    return 0;
}

输出结果:

Hello
World!
This
is
a
test.
C语言 strtok 函数详解:字符串分割利器

原文地址: https://www.cveoy.top/t/topic/CZB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录