用strstr這個函數
創(chuàng)新互聯堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網站制作、成都網站建設、企業(yè)官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的滎經網站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!
包含文件:string.h
函數名: strstr
函數原型:extern char *strstr(char *str1, char *str2);
功能:找出str2字符串在str1字符串中第一次出現的位置(不包括str2的串結束符)。
返回值:返回該位置的指針,如找不到,返回空指針。
C/C++ string庫(string.h)提供了幾個字符串查找函數,如下:
memchr 在指定內存里定位給定字符
strchr 在指定字符串里定位給定字符
strcspn 返回在字符串str1里找到字符串str2里的任意一個字符之前已查找的字符數量
strrchr 在字符串里定位給定字符最后一次出現的位置
strpbrk 在字符串str1里定位字符串str2里任意一個首次出現的字符
strspn 返回字符串str1從開始字符到第一個不在str2中的字符個數
strstr 在字符串str1中定位字符串str2首次出現的位置
int?same(char*?a,?char*?b)
{
int?s?=?0;
char*?m?=?b;
while?(*a?==?*b??a??m){a++;b++;s++;}
return?s;
}
int?maxsubstr(char?*s,?char**?p)
{
char*?last?=?NULL;
int?lastL?=?0;
while?(*s)
{
char*?d?=?s+1;
while(*d)
{
int?l?=?same(s,?d);
if?(l??lastL){lastL?=?l;?last?=?s;}
d++;
}
s++;
}
*p?=?last;
return?lastL;
}
#includestdio.h
#includestring.h
int?findstr(char?*s_str,char?*d_str);
int?main(void)?{
char?s1[80],s2[80];
int?n;
printf("請輸入一個字符串:");
gets(s1);
printf("請輸入你要查找的字符串:");
gets(s2);
n=findstr(s1,s2);
printf("%s在%s里共有%d個\n",s2,s1,n);
return?0;
}
int?findstr(char?*s_str,char?*d_str)?{
int?i,j,k,count=0;
char?temp[80];
int?length=strlen(d_str);
for(i=0;istrlen(s_str);i++)?{
k=0;
for(j=i;ji+length;j++)
temp[k++]=s_str[j];
temp[k]='\0';
if(!strcmp(temp,d_str))?count++;
}
return?count;
}
復制相關函數:memcpy、memmove、strcpy、strncpy
字符串連接函數:strcat、strncat
字符串比較函數:memcmp、strcmp、strcoll、strncmp、strxfrm、
查找函數:memchr、strchr、strcspn、strpbrk、strrchr、strspn、strstr、strtok
其他相關函數:memset、strerror、strlen
可利用strstr函數。
strstr函數功能是找出字符串中特定字符串第一次出現的位置。如果找到,返回字符串中出現特定字符串的地址;如果沒找到,返回空指針。如果要返回值是bool型的話,可以自寫一個函數根據strstr的返回值,判斷自寫函數的返回值。
如:
bool
strfind(*str1,*str2)
{
if(strstr(*str1,*str2)!=0)
return
true;
return
false;
}
如果要不區(qū)分大小寫,可以用strlwr(轉換為大寫)或strupr(轉換為小寫)將兩字符串同一轉換為大寫(或小寫)再作查找。
新聞標題:c語言查找字符串的函數 c++字符串查找函數
本文地址:http://jinyejixie.com/article24/dodhdje.html
成都網站建設公司_創(chuàng)新互聯,為您提供網站設計公司、響應式網站、微信小程序、外貿網站建設、品牌網站設計、網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯