C语言使用递归算法将一个正整数字符串为对应的数值。不得使用循环
c语言没有默认参数吧,改为:
#include <stdio.h>
int fun(char *p,int m)
{
int n=1;
if(*p)
{
n=m*10+*p-'0';
return fun(p+1,n);
}
return m;
}
void main()
{
char str[]="1234";
printf("%d\n",fun(str,0));
}
#include <stdio.h>
int fun(char *p,int m=0)
{
int n=1;
if(*p)
{
n=m*10+*p-'0';
return fun(p+1,n);
}
return m;
}
void main()
{
char str[]="1234";
printf("%d",fun(str));
}