1. 程式人生 > >模擬實現strchr

模擬實現strchr

今天 模擬實現的是strchr這個庫函式,還是首先上來簡單介紹一下這個函式是用來做什麼的。

先看看c++官網的正規介紹

 

看不懂的話可以看一下百度給的簡單通俗易懂的解釋

 

其實就是strstr是在字串中尋找字串,而strchr是在字串中尋找某一個字元。所以說這個的難度相對於strstr來說簡單了很多。

#define _CRT_SECURE_NO_WARNINGS 1

 

#include<stdio.h>

#include<stdlib.h>

char *my_strchr(const char *msg, char dest)

{

char *m = NULL;

while (*msg != NULL)

{

if (*msg == dest)

{

return (char *)msg;

}

*msg++;

}

return NULL;

}

int main()

{

char *a = "abcderf";

char b = 'e';

char *c = NULL;

c = my_strchr(a, b);

printf("%s", c);

system("pause");

}

 

還是要記得const char *msg不能直接將msg賦值給新建立的char型別中,並且dest和msg不能直接說這兩個相等,dest是字元型別,而msg是指標型別,所以判斷兩個相等的時候是*msg == dest

這個相對於strstr難度還是降低了很多。

程式執行結果為

 

 還是在編寫程式碼的規範性上有很大的欠缺。尤其是對程式中變數的命名以及對函式的命名上還是需要自己的不斷提升,不斷的讀取他人的優秀程式碼來進行一定的學習。