char* strchr( const char* str, int chr );在str中查找第一次出现的chr,没找到则返回0char* strrchr( const char* str, int chr );在str中查找最后一次出现的chr,没找到则返回0char* strstr( const char* str, const char* substr );在str中查找第一次出现的substr,没找到则返回0size_t strspn( const char* str, const char* chrset );在str中查找 只包含在chrset中的字符 的最开始的最长字符数目strspn( "cabbage", "abc" ) == 5;strspn( "cabbage", "dc" ) == 1;strspn( "cabbage", "d" ) == 0;strspn( str, "abceg" ) == 7;char* strspnp( const char* str, const char* chrset );和strspn功能一样,只是返回指针const char* str = "cabbage"strspnp( str, "abc" ) == str+5;strspnp( str, "dc" ) == str+1;strspnp( str, "d" ) == str+0;strspnp( str, "abceg" ) == 0; // 和strspn不一样size_t strcspn( const char* str, const char* chrset );在str中查找第一次出现在chrset中的字符位置,没找到则返回str结尾的''的位置strcspn( "xyzbxz", "abc" ) = 3strcspn( "xyzbxz", "xyz" ) = 0strcspn( "xyzbxz", "no match" ) = 6strcspn( "xyzbxz", "" ) = 6strcspn( "", "abc" ) = 0strcspn( "", "" ) = 0char* strpbrk( const char* str, const char* chrset );和strcspn功能一样,只是返回指针strpbrk( "xyzbxz", "abc" ) = "xyzbxz"+3strpbrk( "xyzbxz", "xyz" ) = "xyzbxz"+0strpbrk( "xyzbxz", "no match" ) = 0 // 和strcspn不一样strpbrk( "xyzbxz", "" ) = 0 // 和strcspn不一样strpbrk( "", "abc" ) = 0 // 和strcspn不一样strpbrk( "", "" ) = 0 // 和strcspn不一样