C/C++ string庫(string.h)提供了幾個字符串查找函數,如下: memchr 在指定內存裡定位給定字符 strchr 在指定字符串裡定位給定字符 strcspn 返回在字符串str1裡找到字符串str2裡的任意一個字符之前已查找的字符數量 strrchr 在字符串裡定位給定字符最後一次出現的位置 strpbrk 在字符串str1裡定位字符串str2裡任意一個首次出現的字符 strspn 返回字符串str1從開始字符到第一個不在str2中的字符個數 strstr 在字符串str1中定位字符串str2首次出現的位置 函數說明: 1、memchr 原型:const void * memchr ( const void * ptr, int value, size_t num); void * memchr ( void * ptr, int value, size_t num); 參數:ptr,待查找的內存指針; value,要查找的值; num,內存大小。 說明:在ptr指向的內存中查找value,返回指向和value首次匹配的元素指針,如果沒有找到,返回NULL指針。 2、strchr 原型:const char * strchr ( const char * str, int character); char * strchr ( char * str, int character); 參數:str,待查找字符串指針; character,要查找的值。 說明:在字符串str中查找character,返回指向和character首次匹配的元素指針,如果沒有找到,返回NULL指針。 3、strcspn 原型:size_t strcspn ( const char * str1, const char * str2); 參數:str1,待查找的字符串指針; str2,要查找的字符串指針。 說明:在str1中查找str2中的字符,返回找到str2中任意一個字符時已查找的字符個數。 4、strrchr 原型:const char * strrchr ( const char * str, int character); char * strrchr ( char * str, int character); 參數:str,待查找的字符串指針; character,要查找的值。 說明:在str中查找character,返回指向與character最後一次匹配的元素的指針,如果沒有找到,返回NULL指針。 5、strpbrk 原型:const char * strpbrk (const char * str1, const char * str2); char * strpbrk ( char * str1, const char * str2); 參數:在str1中查找str2中任意一個字符,返回指向與首次出現的str2中的任意一個字符匹配的元素的指針,如果沒有找到,返回NULL指針。 6、strspn 原型:size_t strspn ( const char * str1, const char * str2); 參數:str1,待查找的字符串指針; str2,要查找的字符串指針。 說明:從str1的第一個字符開始算起,直到出現一個不在str2中的字符為止,返回字符個數。 7、strstr 原型:const char * strstr ( const char * str1, cosnt char *str2); char * strstr ( char * str1, const char * str2); 參數:str1,待查找的字符串指針; str2,要查找的字符串指針。 說明:在str1中查找匹配str2的子串,並返回指向首次匹配時的第一個元素指針。如果沒有找到,返回NULL指針。