如何正确使用c语言strtok函数
1、strtok函数用来分解字符串,但是不像其他高级语言中split分解字符串返回数组,strtok只是分解字符串下一段内容。我们看一下通常的strtok用法,如下所示:

3、在实际编程时,笔者发现有时候因为使用strtok函数,有些想当然的用法。比如,对strtok函数的返回值的判断。很多人可能以为strtok如果未找到分解字符串时会返回NULL,这其实就大错特错了。

5、还一个注意点是:strtok函数不是线程安全函数。在循环中调用strtok函数时,我们给strtok函数传递了NULL指针,那么函数怎么知棕百脾酷道从原始字符串中哪个位置继续执行分解操作呢?不难猜测,strtok函数内部使用了静态变量,保存了下一次分解起始位置。对于多线程调用strtok函数时,使用静态全局变量会被多个线程重复改变,造成错乱等问题。一个可能的strtok函数的实现:
