C 教程

C 教程 C 语言简介 C 下载安装和环境配置 C 快速入门 C 语法 C 输出 C 注释 C 变量 C 数据类型 C 常量 C 运算符 C 布尔值 C If...Else 语句 C Switch 语句 C While 循环 C For 循环 C Break/Continue 语句 C 数组 C 字符串 C 用户输入 C 内存地址 C 指针

C 函数

C 函数 C 函数参数 C 作用域 C 函数声明 C 递归 C 数学函数

C 文件

C 创建文件 C 写入文件 C 读取文件

C 结构体

C 结构体 C 嵌套结构体 C 结构体和指针 C 联合体 C typedef

C 枚举

C 枚举

C 内存

C 内存管理

C 错误

C 错误 C 调试 C 空值 C 错误处理 C 输入验证

C 更多

C 日期 C 随机数 C 宏 C 代码组织 C 存储类 C 位运算符 C 固定宽度整数

C 项目

C 项目

C 参考资料

C 参考资料 C 关键词 C <stdio.h> C <stdlib.h> C <string.h> C <math.h> C <ctype.h> C <time.h>

C 标准库参考

C 标准库 - 参考手册 C 标准库 - <assert.h> C 标准库 - <ctype.h> C 标准库 - <errno.h> C 标准库 - <float.h> C 标准库 - <limits.h> C 标准库 - <locale.h> C 标准库 - <math.h> C 标准库 - <setjmp.h> C 标准库 - <signal.h> C 标准库 - <stdarg.h> C 标准库 - <stddef.h> C 标准库 - <stdio.h> C 标准库 - <stdlib.h> C 标准库 - <string.h> C 标准库 - <time.h>

C 实例

C 语言实例 C 经典100例 C 编译器 C 测验


C 字符串 strtok() 函数

❮ 字符串教程


示例

用空格分隔句子中的单词:

char myStr[] = "Learn C++ at W3schools";
char * myPtr = strtok(myStr, " ");
while(myPtr != NULL) {
  cout << myPtr << "
";
  myPtr = strtok(NULL, " ");
}
亲自试一试 »

定义和用法

strtok() 函数使用分隔符将字符串拆分成多个部分(称为"标记")。

第一次调用 strtok() 函数时,应传入一个指向待分割字符串的指针;之后每次调用都应传入 NULL 作为参数。每次调用该函数都会返回一个指向不同标记的指针,直到没有更多标记为止。此时,每次函数调用都将返回 NULL。

请注意,此函数会修改原始字符串,将分隔符替换为空终止符,以便每个标记都可以有自己的空终止符。

strtok() 函数定义在 <string.h> 头文件中。


语法

strtok(char * str, const char * delimiters);

参数值

参数 描述
str 必需。指向要开始分割的字符串的指针。首次调用后,请将 NULL 传递给此参数,以便从同一字符串中获取更多片段。
delimiters 必需。要搜索的分隔符集合。当找到其中任何一个字符时,标记结束。

技术细节

返回值: 指向原始字符串中某个标记位置的 char 类型指针,如果没有更多标记,则为 NULL。

❮ 字符串教程


相关页面

C 字符串教程

C 字符串函数教程