关于static 的研究 与递归调用的输出


static的作用 :1.保存上次执行的结果 2.static int m; 这里默认m的初始值为0,即默认

值是0

#include "stdio.h"
int fun(int ,int);
// 用户自定义函数在main函数之后使用,
//就必须在main函数之前进行声明
main()
{
int k=4,m=1,p;
p=fun(k,m);
printf("%-2d",p);
p=fun(k,m);
printf("%d",p);
}
int fun(int a,int b)
{
static int m,i=2; //static 作用之一就是保存上次执行的结果
i+=m+1;
m=i+a+b;
return m;}
递归调用以后递归输出:
#include "stdio.h"
void fun(char *a)
{ if(*a)
{    fun(1+a); // 直到元素的下标为4,则a[4], a+1
//则a[5]为空则输出a[4],a[2],a[1],递归调用递归输出
printf("%c",*a);
}
}
void main()
{
char s[10]="12345";
printf("处理前的字符串 :%s\n",s);
printf("处理后的字符串 :");
fun(s);
printf('\n');

 



转载于:https://www.cnblogs.com/Mr210843013/p/4776029.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值