c语言静态变量定义
发布时间: 2025-04-27 15:47:58
1. C语言静态变量问题
static变量
static声明的变量为“静态局部变量”,变量内容具有持久性。
该局部变量的值在函数调用结束之后不会消失,而仍然保留其原值。即它所占用的存储单元不释放,在下一次调用该函数时,其局部变量的值仍然存在,也就是上一次函数调用结束时的值。
return m++
前置++是用之前就加1,用的人拿到的一定是新值;后置++是用完之后才加1,用的人拿到的是旧值.
m++中的加法确实做了,而且是在return之前做的,只不过返回值早就保存好了,而且是m在执行加法之前的值
综述:
第1次:返回0,m变成1
第2次:返回1,m变成2
第3次:返回2,m变成3
第4次:返回3,m变成4
第5次:返回4,m变成5
望采纳
2. C语言中静态变量与动态变量的定义与区别
动态变量和静态变量定义和区别如下:
1、定义上,静态变量比动态变量多一个关键字static,比如:
动态变量:int i;
静态变量:static int i;
2、动态变量在子程序中,每次调用时都会从零开始,不会保留原有数据,静态变量调用时原有值不会发生改变,比如:
main()
{
int i;
for(i=0;i<5;i++)fun();//fun1();
}
void fun() //输出结果为11111
{
int j;
j++;
printf("%d",j);
}
void fun1() //输出结果为12345
{
static int j;
j++;
printf("%d",j);
}
热点内容