在vc++8.0的函数库中,strtok()函数的实现采用了bit map,随后继续查阅strspn()、strcspn()和strpbrk()这三个函数源码,发现也是采用的bit map来减少存储空间,并公用了部分代码,因此写篇博客简单记录一下。
首先来看着三个函数的原型:
//return length of prefix of string consisting of characters in control
size_t __cdecl strspn (const char * string, const char * control);
//return length of prefix of string consisring of characters not in control
size_t __cdecl strcspn (const char * string, const char * control);
//return pointer to first occurrence in string of any charactrers of control,
//or NULL if nor present
char * __cdecl strpbrk (const char * string, const char * control);
XX\Microsoft Visual Studio 8\VC\crt\src这个文件夹下有这样三个