在string.h头文件中
函数原型
char *strtok(char s[], const char *delim);
分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。
例如:strtok(“abc,def,ghi”,”,”),最后可以分割成为abc def ghi.尤其在点分十进制的IP中提取应用较多。
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
// char* strtok(char s[], char* delim);
int main(int argc, char* argv[])
{
char sentence[] = "This is a sentence with 7 tokens";
std::cout << "This string to be tokenized is:\n"
<< sentence << "\n\nThe tokens are:" << std::endl;
char *tokenPtr = strtok(sentence, " ");
while(tokenPtr != NULL)
{
std::cout << tokenPtr << std::endl;
tokenPtr = strtok(NULL, " ");
}
return 0;
}
结果
This string to be tokenized is:
This is a sentence with 7 tokens
The tokens are:
This
is
a
sentence
with
7
tokens