标签: c++ c string function
char * strpbrk (char * str1, const char * str2 );
返回指向str1中任何字符的str1中第一个匹配项的指针,如果没有匹配则返回空指针。
int strcspn( const char * str1, const char * str2 );
str1的初始部分的长度,不包含任何属于str2的字符。
似乎两者都一样,有什么重大差异吗?
答案 0 :(得分:4)
这些函数在C ++编程中几乎没有任何应用。我想是的。但是,如果你想了解它,这就是答案,
在您的问题中strcspn返回字符位置,而 strpbrk返回指针。
strcspn
strpbrk
如果没有找到任何字符,也是偶然的,strpbrk会返回空指针; IIRC,在相同情况下strcspn会在字符串末尾返回NUL 的索引。
我也有关于strcspn()和strpbrk()的血统解释。检查链接。