C语言中如何查找字符串?

Python017

C语言中如何查找字符串?,第1张

用strstr这个函数\r\n\r\n包含文件:string.h\r\n函数名: strstr \r\n函数原型:extern char *strstr(char *str1, char *str2)\r\n功能:找出str2字符在str1字符串中第一次出现的位置(不包括str2的串结束符)。\r\n返回值:返回该位置的指针,如找不到,返回空指针。\r\n\r\n源代码:\r\n\r\n#include\r\n#include//调用string.h中的strstr函数\r\nvoid main(){\r\nchar ch1[255]="abcde"\r\nchar ch2[100]="cd"\r\nchar* ch//用于接受返回值\r\nif((ch=strstr(ch1,ch2))==NULL){//说明没有要找的字符串\r\nprintf("-1\n")\r\n}else{//说明找到了那个字符串\r\nprintf("%d\n",ch-ch1+1)//cde的地址减去abcde的地址+1\r\n} \r\n}

字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“b”,s[9]="j",而字符串的零位正是它的长度,c语言查找字符串方法为:

1、首先,定义一个字符数组变量,可以这么写。

2、然后输入字符的长度。

3、接下来就可以直接赋值字符串。

4、也可以定义多个字符串,可以写成这样。

5、使用字符串时,建议加上该头文件。

6、此外,还可以使用函数为其初始化。

注意事项:

尽管形式字符串可以有任意(但有限)的长度,实际语言的字符串的长度经常被限制到一个人工极大值。有两种类型的字符串数据类型: “定长字符串”,它有固定的极大长度并且不管是否达到了这个极大值都使用同样数量的内存。

#include&ltstdio.h&gt

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=0ch!='\n'i++){

str<i>=ch

count++

ch=getchar()

}

for(i=0i&ltcounti++)

if(a==str<i>)

index=i

if(index!=-1)

printf("index=%d",index)

else

printf("Not Found")

return 0

}

扩展资料:

getchar()用法:

getchar()函数的作用是从计算机终端(一般为键盘)输入一个字符。getchar()函数只能接收一个字符,其函数值就是从输入设备得到的字符。

例:

#include&ltstdio.h&gt

int main(void)

{

int c

/*Note that getchar reads from stdin and

is line bufferedthis means it will

not return until you press ENTER.*/

while((c=getchar())!='\n')

printf("%c",c)

return 0

}

注:可以利用getchar()函数让程序调试运行结束后等待编程者按下键盘才返回编辑界面,用法:在主函数结尾,return 0;之前加上getchar()