Chinaunix首页 | 论坛 | 博客
  • 博客访问: 808029
  • 博文数量: 76
  • 博客积分: 2211
  • 博客等级: 上尉
  • 技术积分: 1693
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-26 19:36
文章分类

全部博文(76)

文章存档

2012年(67)

2011年(9)

分类: C/C++

2012-02-22 18:02:47

1,strchr函数
函数功能:查找一个字符。在一个字符串中查找一个特定的字符。
函数原型:char *strchr(char const *str,int ch);
函数说明:strchr在字符串str中查找字符ch第一次出现的位置,找到后返回一个指向该位置的指针。如果该字符不存在于字符串中,则返回一个NULL指针。注意:第二个参数是一个整型值,但是,它包含了一个字符串值。
函数实现:
  1 /*实现strchr函数*/
  2 #include
  3 #include
  4 char *mystrchr(char *s,char c)
  5 {
  6     char*p=s;
  7     while(*s && *s!=c)
  8         s++;
  9     if(*s==c)
 10         return s;
 11     return NULL;
 12 }  
 13
 14 int main()
 15 {
 16     char buf[20] = "hellowrold!";
 17     char c='l';
 18     char *p = mystrchr(buf,c);
 19     printf("%s\n",p);
 20     return 0;
 21 }  
 22
 
2,strstr函数
函数功能:在一个字符串中查找一个字串
函数原型:char *strstr(char const *s1,char const *s2);
函数说明:strstr实现在s1中查找整个s2第一次出现的位置,并返回一个指向该位置的指针。如果s2并没有完整的出现在s1的任何地方,函数返回一个NULL指针。如果第二个字符串是一个空字符串,函数返回s1。
函数实现:
  1 /*实现strstr函数*/
  2 #include
  3 #include
  4 char *mystrstr(char *s1,char *s2)
  5 {
  6     char *pChar;
  7     pChar = s2;
  8     int len = strlen(s2);
  9     for(;strchr(s1,*pChar)!='\0';s1++)
 10     {
 11         if(strncmp(s1,pChar,len) == 0)
 12         {
 13             return s1;
 14         }
 15     }
 16     return   NULL;
 17 }
 18
 19 int main()
 20 {
 21     char str1[20]="abcdhello!";
 22     char str2[20]="cd";
 23     char *p = mystrstr(str1,str2);
 24     printf("%s\n",p);
 25     return 0;
 26 }
 27
 
阅读(10932) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~