📜  strtok 的使用 - C++ (1)

📅  最后修改于: 2023-12-03 14:47:44.074000             🧑  作者: Mango

strtok 的使用

在 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 函数有一些局限性,例如无法处理连续的分隔符。对于更加复杂的字符串拆分操作,需要使用一些更加高级的库函数或手动实现拆分逻辑。