C语言中static和auto用法是什么
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这期内容当中小编将会给大家带来有关C语言中static和auto用法是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。static的第一种用法:定义为静态变量何为
千家信息网最后更新 2025年11月07日C语言中static和auto用法是什么
这期内容当中小编将会给大家带来有关C语言中static和auto用法是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
static的第一种用法:定义为静态变量
何为静态变量?存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。就是只进行一次初始化。不理解?看代码!
代码见真知:
#includeint main(){ void fun(); //定义一个空函数 for(int i=0;i<3;i++) { fun(); //调用函数 } return 0;} void fun() { int i=0; static int static_i=0; printf("没有加static的结果为:%d\n",i); printf("加了static的结果为:%d\n",static_i); i++; //没有加static,i最终都会被初始化为0 static_i++; //加了static,只初始化一次,后面继续累加 printf("\n");}
运行结果:
由结果可以看出有static的在持续累加,除了第一次没有再初始化。
static的第二种用法:有理说不清,直接代码见真知
#includeint main(){ int i,sum; sum=2; for(i=0;i<3;i++) { //外置模块 printf("外置模块为:%d\n",sum); sum++; //内置模块 { static int sum=1; //局部重新定义sum的初始值 printf("内置模块为:%d\n",sum); sum++; } printf("\n"); } return 0;}
运行结果:
由结果可见:外置模块和内置模块是互不影响的,这就是static的第二种用法,保持局部一部分稳定,不会随外部的变化而变化。
auto的用法:直接代码见真知
#includeint main(){ int i,sum; sum=2; for(i=0;i<3;i++) { //外部 printf("外置模块为:%d\n",sum); sum++; //局部 { auto int sum=1; printf("内置模块为:%d\n",sum); sum++; } printf("\n"); } return 0;}
代码看不懂?结合运行结果就懂了:
由结果显而易见:外置模块持续累加,内置模块全部为1,与static的第二种用法相比较,auto局部不断进行初始化 ,而static是局部除第一次外不再初始化。
static和auto的相同之处是都能只在局部进行改变,与外置模块互不干涉。
C语言是什么
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易的方式编译、处理低级存储器。
上述就是小编为大家分享的C语言中static和auto用法是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
模块
结果
语言
局部
代码
运行
变量
就是
真知
静态
内容
函数
程序
第一次
分析
变化
存储
低级
相同
显而易见
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
2020年网络技术热点
7016恢复数据库
乐器绘画软件开发
设备和网络安全专用
什么是网络安全志愿者
ios内测软件开发
u盘安装服务器r730
观网络安全课有感
服务器pci报错
软件开发工作汇报 ppt
微信开发用服务器
导出远程数据库dmp
深圳市唯恩网络技术有限公司
浙江品牌网络技术费用是多少
浦发银行软件开发工程师薪资
学好软件开发需要哪些
酒店订房系统数据库课程设计
湖南企业党建软件开发系统
分析数据库的软件
基层社区网络安全防控
无锡自动化软件开发项目信息
qq炫舞手游有哪些服务器
中科院调整知网数据库采购模式
天津网络安全中心 张鸿
天津服务器迁移公司有哪些云空间
在哪看数据库连接池
戴尔t40服务器没有vga
监测数据库变化
河南省对口升学网络技术听
什么表示web服务器控件