int mystrlen(char s[], int n) { if (s[n]) { mystrlen(s, n + 1); } else { return n; } } int main(void) { printf("%d\n", mystrlen("hello", 0)); return 0; }
[quote=引用 8 楼 paschen 的回复:] 字符串最后是以\0结尾 mystrlen(s, n + 1); 递归调用时,每次n会加1,直到字符串最末尾时就不再递归了
字符串最后是以\0结尾 mystrlen(s, n + 1); 递归调用时,每次n会加1,直到字符串最末尾时就不再递归了
33,311
社区成员
41,784
社区内容
加载中
试试用AI创作助手写篇文章吧