strtok()函数使用静态变量。
因此它不是可重入的。并且不能用于分析多个字符串。
我想知道的是为什么strtok()是这样设计的?strtok_r()应该是strtok()。
这个函数将来会留在标准库中吗?
发布于 2011-04-01 17:09:52
函数不会改变。向后兼容性是标准的一件大事。
为什么函数不是可重入的?当它被设计的时候,我并不在70年代,但是我假设它的用例不需要重入。然后,它的使用推广,因为它是有用的,保持兼容性比增加可重入性的灵活性更可取。最后,委员会规范了现有的实践,而不是设计一个新的解决方案,而不是已经存在的解决方案。
https://stackoverflow.com/questions/5511172
复制相似问题