在编写程序的过程中,经常会遇到对字符串进行分割的问题。如果自己判断分割的话比较麻烦,这里介绍一下C++库函数strtok的用法。
- 头文件:
#include <cstring>
- 函数原型:
char *strtok(char *str, const char *delim);
- 参数解释:参数1str: 要进行分割的字符串; 参数2delim:根据delim进行分割
- 返回值:当某个字符片段被发现,则指向字符片段的开头;若没有发现,则返回NULL;若到达str的末尾,也返回NULL
- 实例:
#include <string.h>
#include <stdio.h>
int main()
{
char str[] = "today is 2022/3/5 hh;!";
//当delim为多个字符时,则会依据这些字符进行分割
const char* delim = " /;";//依据 ' ' '/' ';' 这三个进行分割
char *p;
p = strtok(str,delim);
while(p)
{
printf("%s\n",p);
p=strtok(NULL,delim);
}
return 0;
}
代码结果: