分析:strlen可计算字符串包含元素个数,其计算过程中判断是否遍历过\0,并在遍历时计数,直至遍历至\0退出;
而数组是连续的内存地址,可以判断当前地址元素是否等于\0,以此作为结束递归的条件;并且,每循环一次,指针地址+1;直至指向\0退出循环。那么走的每一步都是包含元素的数量累加。最后,所有累加结果即 包含元素的个数。
下面先来看常规做法:
#include<stdio.h>
非递归方法
int fun(char* s);
void main() {
char arr[10] = {
'f','d',&