您的位置:首頁>正文

C|自訂庫函數strstr(子串判斷)

strstr(str1,str2) 函數用於判斷字串str2是否是str1的子串。 如果是, 則該函數返回str2在str1中首次出現的地址;否則, 返回NULL。

自訂相同功能的函數, 達到如下效果:

代碼:

使用二重迴圈實現字串匹配。

關鍵在於理解各指標的指向。 有四個指標(看下圖), str2始終不動, 外迴圈控制str1, 內迴圈控制src、sub指標。

1 字串的初始化狀態:

2 執行第一次外迴圈:

3 執行第二次外迴圈:

4 執行第三次外迴圈:

5 執行第四次次處迴圈:

原始程式碼:

#include "stdio.h"

#include "string.h"

char *mystrstr(const char *str1, const char *str2)

{

char *src,*sub;

if(str1 == NULL || str2 == NULL)

{

printf("The string is error! ");

exit(0);

}

while(*str1 != '

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示