C++中split函数
时间: 2023-10-02 10:10:52 浏览: 101
C中没有内置的split函数,但是可以使用strtok函数来实现字符串的分割。strtok函数的原型下:char * strtok (char * str, const char * delimiters)。这个函数可以将一个字符串分割成多个片段。参数str是要被分割的字符串,参数delimiters是用作分割的字符集。当strtok函数在参数str的字符串中找到了参数delimiters中的字符时,会将该字符替换为'\0'字符。在第一次调用时,strtok函数需要传入参数str作为被分割的字符串,之后的调用需要将参数str设为NULL。每次调用成功后,strtok函数会返回下一个分割后的字符串指针。如果已经无法分割了,则返回NULL。
下面是一个示例程序:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "a,b,c,d*e";
const char *delimiters = ",*";
char *p;
p = strtok(str, delimiters);
while (p != NULL) {
printf("%s\n", p);
p = strtok(NULL, delimiters);
}
return 0;
}
```
在这个示例中,我们使用逗号和星号作为界定符对字符串"a,b,c,d*e"进行分割。输出结果如下:a b c d。
这就是使用strtok函数来实现字符串分割的方法。
阅读全文