(转)C/C++字符串查找函数

Posted on 2012-08-01 08:23 卡洛shll 阅读(663) 评论(0)  编辑 收藏 引用 所属分类: C/C++

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指针。


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理