strlen函式功能是計算字串中字元的個數.(除\0外)
而字串本身就是乙個字元陣列,只不過末尾以\0結束.
因此,我們只需遍歷除\0之外的所有字元即可.
有三種方法可以解決這個問題.
方法一:設定乙個整型計數器,遍歷字串.
方法二:通過不斷函式自身的遞迴.
方法三:與方法一類似,設定乙個char*變數標記字串尾部,通過指標相減得到字元長度.
#include //方法一:通過設定整型計數器,模擬實現strlen函式.
int my_strlen1(const char *str)
return count;
}//方法二:通過遞迴,模擬實現strlen函式
int my_strlen2(const char *str)
return 0;
}//方法三:通過char*變數,模擬實現strlen函式
//(庫函式中的strlen函式就是這麼幹的)
int my_strlen3(const char *str)
return (end-str-1);
}int main()
/*#include size_t strlen(const char *s);
功能:計算字串長度
引數: s:字元陣列
返值:返回字串實際長度,不包括『\0』在內
```c
int my_strlen(const char *s)
```*/
如何模擬實現乙個call apply bind函式
call模擬實現 首先我們實現繫結this功能。比如我們有乙個foo函式 function getname 還有乙個wechat物件 const wechat 我們希望實現 getname.call wechat fedaily以wechat和getname這個為例,這裡的this即getname,...
C語言 模擬實現memcpy
模擬實現記憶體拷貝函式memcpy 該特點與strcpy 比較就是不管是不是string型別均可以比較,只是單純記憶體的比較。void my memcpy void p1,const void p2,size t count char dest char p1 char src char p2 si...
C語言模擬實現strncpy strcat
模擬實現strncpy 先演示一下strncpy的效果 如下 include include void main void 執行結果 通過以上演示可以看出,strncpy實現的是用乙個固定的字串去替換原字串中的某段字元,可以設定乙個迴圈,來實現字元的替換,如果它只有乙個字元要替換,則迴圈執行一次,設...