Chinaunix首页 | 论坛 | 博客
  • 博客访问: 428050
  • 博文数量: 133
  • 博客积分: 936
  • 博客等级: 准尉
  • 技术积分: 1069
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-31 15:54
文章分类

全部博文(133)

文章存档

2016年(19)

2013年(22)

2012年(92)

分类: C/C++

2012-06-11 18:45:53

原型:extern char *strchr(const char *s,char c);

  头文件:#include

  功能:查找字符串s中首次出现字符c的位置

  说明:返回首次出现c的位置的指针,如果s中不存在c则返回NULL。

  举例1:

  1.   #include <string.h>
  2.   #include <stdio.h>
  3.   int main(void)
  4.   {
  5.   char string[17];
  6.   char *ptr, c = 'r';
  7.   strcpy(string, "This is a string");
  8.   ptr = strchr(string, c);
  9.   if (ptr)
  10.   printf("The character %c is at position: %d\n", c, ptr-string);
  11.   else
  12.   printf("The character was not found\n");
  13.   return 0;
  14.   }
  15.   运行结果:The character r is at position: 12Press any key to continue
  16.   举例2:
  17.   // strchr.c
  18.   #include <stdio.h>
  19.   #include <string.h>
  20.   int main()
  21.   {
  22.   char temp[32];
  23.   memset(temp,0,sizeof(temp));
  24.   strcpy(temp,"Golden Global View");
  25.   char *s = temp;
  26.   char *p,c='v';
  27.   p=strchr(s,c);
  28.   if(p)
  29.   printf("%s",p);
  30.   else
  31.   printf("Not Found!");
  32.   return 0;
  33.   }
  34.   运行结果:Not Found!Press any key to continue
  35.   举例3:
  36.   #include <stdio.h>
  37.   #include <string.h>
  38.   void main()
  39.   {
  40.   char answer[100],*p;
  41.   printf("Type something:\n");
  42.   fgets(answer,sizeof answer,stdin);
  43.   if((p = strchr(answer,'\n')) != NULL)
  44.   *p = '\0';
  45.   printf("You typed \"%s\"\n",answer);
  46.   }
  47.   fgets不会像gets那样自动地去掉结尾的\n,所以程序中手动将\n位置处的值变为\0,代表输入的结
阅读(1147) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~