栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

常量与变量

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

常量与变量

1.变量的定义方法

2.变量的分类

3.变量的作用域与生命周期

4.常量的分类

1.变量的定义

变量的类型+变量名+赋值

int a=10;
float b=20.5;
char c='h';

如上图分别定义了一个整形变量a,值为10。浮点型b,值为20.5。字符型c,值为h。

注意:C语言的语法规定,变量要定义在代码块的最前面。

2.变量的分类

变量分为局部变量与全局变量。

局部变量:定义在代码块以内

全局变量:定义在代码块以外

局部变量是在局部范围内定义的,不能在范围外使用。

当局部变量与全局变量的名字相同时,局部变量优先,如下图

int a=100;             //定义的全局变量a
int main()
{
    int a=10;          //定义的局部变量a
    printf("%d",a);    //输出a时,理论上全局a在这里也能使用,但是有局部变量时,局部变量优先,所以输出结果为10
    return 0;
}

注意:一般不建议全局变量与局部变量名字相同

3.变量的作用域与生命周期

局部变量的作用域是该局部变量所在的代码块。

全局变量的作用域是整个工程,使用不同源文件的全局变量时需要声明。

当我在同一个工程中的一个源文件中定义了全局变量a时,我在其他的源文件中也能够使用它,只需用extern对该变量进行声明,如下图。

生命周期:指变量的创建到变量的销毁之间的一个时间段。

局部变量的生命周期是进入作用域开始,离开作用域结束。

全局变量的生命周期是整个程序的生命周期。

4.常量的分类

  (1) 字面常量

  (2) const修饰的常变量

  (3) #define定义的标识符常量

  (4) 枚举常量

(1)字面常量:直接的值,例如10,20等。

(2)const修饰的常变量

int main()
{
    const int n=10;
    int arr[n]={0};
    return 0;
}

如上图,使用关键字const修饰n,使n具有了常属性--即n 的本质仍是变量,只是具有常量的属性。所以上述代码报错。

(3)#define定义的标识符常量

#define MAX 10
int main()
{
    int arr[MAX]={0};
    printf("%dn",MAX);
    return 0;
}

  如上图,上述代码可以编译,说明用#define可以定义常量

define是一个关键字,如上图用#define定义的常量,会在预编译阶段将函数中所有的MAX换成10.

(4)枚举常量

枚举-------即一一列举

生活中有很多可以一一列举的值,如星期,三原色等

C语言提供了一个枚举类型,让我们能够创造出能够被一一列举的类型

enum color
{
    \定义的枚举常量
    red,           //0
    blue,          //1
    green          //2
};
\定义了color这种类型的可能的取值
int main()
{
    enum color a=red;//想用a表示color,即可以用这三个常量给a赋值
    printf("%d,%d,%dn",red,blue,green);//输出结果为0 1 2.即默认枚举常量的值从0开始,逐次加1.
    return 0;
}
    
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/722148.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号