C语言中的标准函数库中的strchr()函数可以实现查找字符串中的某个字符。
做网站、成都做网站的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给创新互联一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。
C语言strchr()函数:
查找某字符在字符串中首次出现的位置
头文件:#include string.h
strchr() 用来查找某字符在字符串中首次出现的位置,其原型为:
char * strchr (const char *str, int c);
【参数】str 为要查找的字符串,c 为要查找的字符。
strchr() 将会找出 str 字符串中第一次出现的字符 c 的地址,然后将该地址返回。
注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个字符也可以被定位。
【返回值】如果找到指定的字符则返回该字符所在地址,否则返回 NULL。
返回的地址是字符串在内存中随机分配的地址再加上你所搜索的字符在字符串位置。设字符在字符串中首次出现的位置为 i,那么返回的地址可以理解为 str + i。
提示:如果希望查找某字符在字符串中最后一次出现的位置,可以使用 strrchr() 函数。
#includestdio.h
int main()
{
int i, flag = 0;
char a[20], ch;
scanf("%s", a); //输入要查找的字符串
getchar(); //去掉上次输入时的换行符
ch = getchar(); //要查找的字符
for(i=0;a[i]!=0;i++)
if(a[i] == ch)
{
flag = 1;
break;
}
if(flag)
printf("找到指定字符,下标为%d。\n", i);
else
printf("没有找到指定字符。\n");
return 0;
}
#includelt;stdio.hgt;
int main()
{
int i,index,count;
char a,ch,str[80];
scanf("%c\n",a);
i=0;
index=-1;
count=0;
ch=getchar();
for(i=0;ch!='\n';i++){
stri=ch;
count++;
ch=getchar();
}
for(i=0;ilt;count;i++)
if(a==stri)
index=i;
if(index!=-1)
printf("index=%d",index);
else
printf("Not Found");
return 0;
}
扩展资料:
getchar()用法:
getchar()函数的作用是从计算机终端(一般为键盘)输入一个字符。getchar()函数只能接收一个字符,其函数值就是从输入设备得到的字符。
例:
#includelt;stdio.hgt;
int main(void)
{
int c;
/*Note that getchar reads from stdin and
is line buffered;this means it will
not return until you press ENTER.*/
while((c=getchar())!='\n')
printf("%c",c);
return 0;
}
注:可以利用getchar()函数让程序调试运行结束后等待编程者按下键盘才返回编辑界面,用法:在主函数结尾,return 0;之前加上getchar();
字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“b”,s[9]="j",而字符串的零位正是它的长度,c语言查找字符串方法为:
1、首先,定义一个字符数组变量,可以这么写。
2、然后输入字符的长度。
3、接下来就可以直接赋值字符串。
4、也可以定义多个字符串,可以写成这样。
5、使用字符串时,建议加上该头文件。
6、此外,还可以使用函数为其初始化。
注意事项:
尽管形式字符串可以有任意(但有限)的长度,实际语言的字符串的长度经常被限制到一个人工极大值。有两种类型的字符串数据类型: “定长字符串”,它有固定的极大长度并且不管是否达到了这个极大值都使用同样数量的内存。