一:函数原型
#include <string.h>
char *strtok(char *str, const char *delim);
二:功能阐述
1.该函数用传过来的标志delim参数,来分割字符串str。2.把str中出现的delim的位置,填充'\0',以达到分割字符串str的目的。3.第一次传入的str必须为str,若打算第二次还继续分割str,则可以传入NULL,但是delim必须传。4.返回值为指向被分割的字符串的指针。解析完返回空。例如:若分割的字符串为"hello,linux,xiaoniu";分割副传入",",则第一次调用返回的指针指向h,第二次指向linux的l.详细看第三部分的例子。
三:用法举例
#include <string.h>
#include <stdio.h>int main(int argc, char *argv[])
{char strBuff[100] = "hello,linux,xiaoniu!";char *b = NULL;b = strtok(strBuff, ",");printf("%s\n", b);b = strtok(NULL, ",");printf("%s\n", b);b = strtok(NULL, ",");printf("%s\n", b);b = strtok(NULL, ",");if(NULL == b){ {printf("now b is NULL!\n");} else {printf("%s\n", b);}return 0;
}
编译并运行程序输出结果:
hello
linux
xiaoniu!
now b is NULL!