【C语言】认识变量及变量的作用域和生命周期-创新互联
在生活中,我们会遇到许多的常量和变量
在成都做网站、成都网站制作、成都外贸网站建设过程中,需要针对客户的行业特点、产品特性、目标受众和市场情况进行定位分析,以确定网站的风格、色彩、版式、交互等方面的设计方向。创新互联还需要根据客户的需求进行功能模块的开发和设计,包括内容管理、前台展示、用户权限管理、数据统计和安全保护等功能。常量:始终不会改变的量
e.g. 性别,血型,圆周率......
变量:会发生改变的量
e.g. 身高,年龄,体重......
在C语言中,变量是在程序运行时其值可以改变的量
如何创建一个变量创建一个变量有两种结构
第一种:变量类型 变量名称= 赋值;
第二种:变量类型 变量名称;
变量名称=赋值;(不推荐)
分析以上变量结构
int(整型类型)age(变量名称)=(赋值符号)18(赋值)
变量之所以被称为变量,是因为它的值随时都可以被改变
创建int变量age,赋值为18
age=age+1;此时的变量age已经从18改变为19
即最终打印的结果为age=19
创建其他数据类型的变量变量除了可以创建一般的int整型变量以外,还可以创建其他数据类型的变量,比如float类型、double类型......
但是,创建其他的数据类型的变量之后,printf函数中所代表数据类型的%d也要随之改变
常用printf函数的格式字符
%d-输入或输出十进制有符号数(int类型)
%c-输出一个字符(char类型)
%s-输出一个字符串
%f-输入或输出单精度浮点数(float类型)
%lf-输入或输出双精度浮点数(double类型)
全局变量与局部变量全局变量:定义在所有函数之外,并且在其作用域(程序)内的函数都可以访问
局部变量:定义在一个函数内部,在函数之外是不可访问的
在此程序中,int a=100;处于全局变量
int a=10;属于局部变量
当全局变量与局部变量的变量名称冲突时,在main函数中的printf优先打印局部变量
注意:全局变量与局部变量的名称最好不要一致
二、变量的作用变量作为一个随时都可以被改变的量,它在程序中有一定的功能作用
e.g.写一个代码求两个数的和
分析以上代码
#define为一个定义,因为在编译器中直接使用scanf函数会直接报错
下面解释一下scanf函数的作用:
如果printf函数代表输出的含义,那么scanf函数就代表输入,它会扫描或提取键盘上所输入的字符,从而存储到变量中
scanf函数的形式
scanf("%d %d",&a,&b);
%d与printf函数中的%d含义一样,都表示输入或输出一个整型
&为取地址符,就是将键盘上所打的字符存入&后的变量中
此代码过程:
创建三个int变量a,b,sum赋值都为0;
应用scanf函数得到键盘上所打的字符或值存入变量a和b中;
定义sum变量=变量a+变量b(此时的a和b为键盘上所打的值);
应用printf函数打印变量sum,得到变量a+变量b的值
三、变量的作用域作用域:变量有效的范围
局部变量的作用域:局部变量所在的局部范围
全局变量的作用域:整个工程(程序)
分析以上代码:
变量g_val为全局变量
所以不论在主函数内还是在主函数内再加一个{}内的printf都可以打印出值
变量a为局部变量
只能在含有变量a的{}内printf才能发挥作用
注意:printf函数只能在主函数内才能发挥作用
四、变量的生命周期生命周期:变量从创建到销毁的时间段
局部变量的生命周期:进入局部范围生命开始,离开局部范围生命结束
全局变量的生命周期:程序的生命周期
分析以上代码:
局部变量a的生命周期就在局部范围{}内发挥作用
一旦离开局部范围,生命周期结束,局部变量a将毫无意义,失去作用
e.g.在局部范围内printf函数发挥作用,可以打印局部变量a的值
在局部范围外printf函数报错,因为局部变量a的生命周期结束,此时a未定义
总结以上就是本人对于变量以及变量的作用域和生命周期的学习和理解
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网站名称:【C语言】认识变量及变量的作用域和生命周期-创新互联
文章起源:http://ybzwz.com/article/dpscod.html