📅  最后修改于: 2023-12-03 14:47:44.074000             🧑  作者: Mango
在 C++ 中,strtok
函数可以用于将一个字符串按照指定的分隔符拆分成若干个子字符串。
char* strtok(char* str, const char* delimiters);
其中,str
表示要被拆分的字符串,delimiters
是指定的分隔符,返回值为拆分出来的第一个子字符串的指针。
以下是一个使用 strtok
函数按照逗号分隔符拆分字符串的例子:
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char str[] = "apple,banana,orange";
char* token = strtok(str, ",");
while(token != NULL)
{
cout << token << endl;
token = strtok(NULL, ",");
}
return 0;
}
输出结果为:
apple
banana
orange
需要注意的是,strtok
函数会修改原始字符串,将分隔符替换成 null 字符,因此在使用完 strtok
后,原始字符串可能会变得不可用。
此外,strtok
函数有一些局限性,例如无法处理连续的分隔符。对于更加复杂的字符串拆分操作,需要使用一些更加高级的库函数或手动实现拆分逻辑。