/*使用for循環+指針來實現*/ int strlen1(const char* str){ const char* s ; for(s=str;*s;s++); return (s-str); } /*使用for循環來實現*/ int strlen2(char str[]){ int i; for(i=0;str[i];i++); return i; } /*使用while循環+指針來實現*/ int strlen3(char str[]){ char* s =str; while(*s) s++; return (s-str); } /*使用遞歸來實現*/ int strlen4(char str[]){ if(*str) return strlen4(str+1)+1; else return 0; } //測試代碼: int main() { // char s[10] ; char* s = "hello,world" ; int l = strlen4(s); printf("%d\n",l); return 0; }