C庫函數char *strstr(const char *haystack, const char *needle)函數查找第一次出現的子串needle在字符串中haystack.不比較終止的 '\0' 字符。
字符數組稱為字符串。
聲明
聲明數組的語法如下 -
char stringname [size];
例如 - char string[50];長度為 50 個字符的字符串
初始化
- 使用單字符常量 -
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
- 使用字符串常量 -
char string[10] = "Hello":;
Accessing− 有一個控製字符串 "%s" 用於訪問字符串,直到遇到“\0”。
strstr() 函數
它用於搜索主字符串中是否存在子字符串。
它返回指向 s1 中第一次出現 s2 的指針。
用法
strstr() 函數的語法如下 -
strstr(mainsring,substring);
示例
下麵的程序顯示了 strstr() 函數的用法。
#include<stdio.h>
void main(){
char a[30],b[30];
char *found;
printf("Enter a string:\n");
gets(a);
printf("Enter the string to be searched for:\n");
gets(b);
found=strstr(a,b);
if(found)
printf("%s is found in %s in %d position",a,b,found-a);
else
printf("-1 since the string is not found");
}
輸出
執行上述程序時,會產生以下結果 -
Enter a string:how are you Enter the string to be searched for:you you is found in 8 position
例子2
讓我們看看另一個關於 strstr() 函數的程序。
下麵給出了一個 C 程序來查找,如果一個字符串作為子字符串存在於另一個字符串中,則使用 strstr 庫函數 -
#include<stdio.h>
#include<string.h>
void main(){
//Declaring two strings//
char mainstring[50],substring[50];
char *exists;
//Reading strings//
printf("Enter the main string:\n ");
gets(mainstring);
printf("Enter the sub string you would want to check if exists in main string:");
gets(substring);
//Searching for sub string in main string using library function//
exists = strstr(mainstring,substring);
//Conditions//
if(exists){
printf("%s exists in %s ",substring,mainstring);
} else {
printf("'%s' is not present in '%s'",substring,mainstring);
}
}
輸出
執行上述程序時,會產生以下結果 -
Enter the main string:TutorialsPoint c Programming Enter the sub string you would want to check if exists in main string:Programming Programming exists in TutorialsPoint c Programming
相關用法
- C語言 strspn()用法及代碼示例
- C語言 strcspn()用法及代碼示例
- C語言 strtol()用法及代碼示例
- C語言 strrchr()用法及代碼示例
- C語言 strftime()用法及代碼示例
- C語言 strtok()用法及代碼示例
- C語言 strncat()用法及代碼示例
- C語言 strupr()用法及代碼示例
- C語言 strlen()用法及代碼示例
- C語言 strtod()用法及代碼示例
- C語言 strcat()用法及代碼示例
- C語言 strxfrm()用法及代碼示例
- C語言 strchr()用法及代碼示例
- C語言 strrev()用法及代碼示例
- C語言 strcmpi()用法及代碼示例
- C語言 strtok()、strtok_r()用法及代碼示例
- C語言 strerror()用法及代碼示例
- C語言 strpbrk()用法及代碼示例
- C語言 strnset()用法及代碼示例
- C語言 strcoll()用法及代碼示例
注:本文由純淨天空篩選整理自Bhanu Priya大神的英文原創作品 What is strstr() Function in C language?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。