strtok,strtok_s函数用法

strtok_s有得编译器不支持,实在不行,用strtok也能编程,strtok_s更安全一点(两者的参数不同),实在不行,可以查MSDN看看他们的用法

strtok函数有两个参数:

char a[]=“sds,qsdsds”;
char b[]="@#$%^^&,;. '";
strtok(a,b),a需要单元化的字符串,b界定符
返回值:理解返回值,首先要理解函数过程:
分两次调用:
第一次调用:
以a的地址为第一个参数,以界定符为第二参数,找不到非界定符,返回NULL,找到非界定符后,开始找界定符,若找不到,返回a,若找到,把界定符改成\0,返回a,但由非界定符后的界定符已经改成\0,所以printf("%s",a),就是从第一个非界定符开始,到界定符之前的字符串;
第二次调用:
以NULL为第一参数,以界定符字符串为第二个参数,其余和第一次调用一样,但此时strtok(NULL,b)返回值是第一个非界定符开始的字符地址。上例中就是q的地址。

发布了21 篇原创文章 · 获赞 0 · 访问量 370

猜你喜欢

转载自blog.csdn.net/gaoxingzhe/article/details/104424983