再帰-文字列の長さを計算します(コード、分析、アセンブリ)

コード:

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
おすすめ