递归-计算字符串长度(代码、分析、汇编)

代码:

main.c

#include <stdio.h>

//该程序用递归计算字符串长度

int strlen(const char* s)
{
    
    
    if( s == NULL )
    {
    
    
        return -1;
    }
    else if( *s == '\0' )
    {
    
    
        return 0;
    }
    else
    {
    
    
        return strlen(s+1) + 1;
    }
}



int main()
{
    
    
    printf("strlen(\"12345\") = %d\n", strlen("12345"));
    printf("strlen(NULL) = %d\n", strlen(NULL));
    printf("strlen(\"\") = %d\n", strlen(""));
    
	getchar();
    return 0;
}

分析:

在这里插入图片描述
在这里插入图片描述

汇编:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_37599645/article/details/111987817