关于c语言auto变量和static变量区别

请解释一下区别#include<studio.h>voidAddOne(){autointia=1ia=ia+1printf("%d\n",ia);}intmai... 请解释一下区别#include<studio.h>void AddOne(){ auto int ia=1 ia=ia+1 printf("%d\n",ia);}int main(){ print("the first number is:") AddOne(); print("the second number is:") AddOne(); return 0;}-----------------------------------------------------------#include<studio.h>void AddOne(){ static int ia=1 ia=ia+1 printf("%d\n",ia);}int main(){ print("the first number is:") AddOne(); print("the second number is:") AddOne(); return 0;} 展开
 我来答
练琲洋敏叡
2020-05-15 · TA获得超过3913个赞
知道大有可为答主
回答量:3143
采纳率:28%
帮助的人:231万
展开全部
自动变量(auto变量)和静态变量(static变量)主要有以下几点区别:
1、static变量存放在静态存储区,在程序整个运行期间都不释放;而auto变量存放在动态存储区,随着生命周期的结束而立即释放。
2、static变量只赋值一次,以后就不用赋值;而auto变量在函数每调用一次都要赋初值。
3、如果用户不对static变量赋初值,则默认为0或'\0';而auto变量为不确定值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式