c 字符串包含

分类:函数知识网浏览量:681发布于:2021-05-11 00:31:32

C语言中的标准函数库中的strchr()函数可以实现查找字符串中的某个字符. 头文件: #include 函数原型:char *strchr(const char *s, int c);

用strstr()函数.char * p = strstr(b, a);if (p) printf("%s", a);

如果“一个字符串”全部是英文字符的话,只要开一个char s[128];的哈希表,每个在其中出现的字符按它的ASCII值,将相应的元素置为1;然后扫描“另一个字符串”,

#include <stdio.h>#include<string.h> int flag=0; void main() { int f(char str1[],char str2[] s1++) {if (*s2==*s1) /*判断字符串中是否有和要判断的字串首字符相同的字符*/ { flag=1

使用这个函数,原型: char *strchr(const char *s,char c);#include 查找字符串s中首次出现字符c的位置,返回首次出现c的位置的指针,如果s中不存在c则返回null.

C语言里的每个字符串都包含有一个【字符串结束符】-- 即是“空字符”,用'\0'表示.

字符是单个的,字符串一般有多个,但也可以是单个,甚至可以是空的 char c; c='a';字符a,注意使用单引号 string c="abcd"; string c1="a";单个字符,但是双引号 char *s="abcd"

/* 判断一个字符串中是否含有字符C 包含有则输出字符在串中的位置*/#include<string.h>#include<stdlib.h>#include<stdio.h> int main(void) { char x[100]; //定义一个足够大的字符数组,用来存放输入 int i,j; printf("请输入字串:\n"); scanf("%s",&x); //输入字符串 i=strlen(x); for(j=0;j<i+1;j++) //遍历输入字串,比对是否存在'c' { if(x[j]=='c') printf("%s位置%d\n",x,j+1); //输出'c'所在位置 } }

假设你输入的是字符串“abcd”,需要寻找的字符是'e',则函数fun开始执行时,指针str指向'a'[a][b][c][d][0] ^当while循环执行完毕,未能找到匹配字符'e'时,str指针指向最后的字符串结束符,如下[a][b][c][d][0] ^此时的str[0]就是字符串的结尾处.在str[0]写入'e'之后,必须在它的后面写入字符串结束符,也就是是str[1]='\0',如下[a][b][c][d][e][0] ^实际上,这里的处理并不严密,如果输入字符串的长度已经是80个字符的话,可能会造成数组下标越界.

以下str()函数的作用是判断字符串s1中是否包含字符串s2,代码如下: void str(char*s1,char*s2) { int i=0,j,k=1; for(;;i++) { j=0; while(s2[j]!='\0') { if(s1[i+j]!='\0'||s1[i+j]!=s2[j]) { k=0; break; } j++; } if(k)break; } if(k)printf(“字符串%s中包含字符串%s.\n”,s1,s2); else printf(“字符串%s中不包含字符串%s!\n”,s1,s2); }