服务器之家

服务器之家 > 正文

C语言中的常量详解

时间:2022-01-05 13:25     来源/作者:JT_GUO

C语言中的常量

C编程中的常量是一些固定的值,它在整个程序运行过程中无法被改变。

字面常量

字面常量是直接写出的固定值,它包含C语言中可用的数据类型,可分为整型常量,字符常量等。如:9.9,“hello”等就属于这一类常量。

##const修饰的常变量

有的时候我们希望定义这么一种变量:值不能被修改,在整个作用域中都维持原值。为了满足用户需求,C语言标准提供了const关键字。在定义变量的同时,在变量名之前加上const修饰。如下所示:

?
1
2
3
4
int main()
{
    const int a = 1;   // const修饰的常变量
}
  • const修饰的常变量,本质上是变量。
  • 但具有常属性,不能被修改。
?
1
2
3
4
5
6
7
int main()
{
    const int a = 1;  
    a = 2;         // 错误
    const int n = 20;
    int arr[n] = { 0 };   //n本质上是变量
}

关于上述n的使用,需要说明的是:在C99标准之前,数组的大小只能是常量修饰,不支持变长数组。

#define定义的标识符常量

C语言提供了***#define***命令定义标识符常量,该标识符常量在程序中是个定值,通常用于代表数组容量或涉及数学的常量等。如:

?
1
2
3
4
5
6
7
#define PI 3.14159
#define SIZE 10    // 此处SIZE代表数组元素个数
int main()
{
    int arr[SIZE]={0};
    return 0;
}

如需修改数组大小,只需将SIZE所代表的值修改即可,十分方便。

枚举常量

日常生活中有一些代表实际意义的常量,有这么一个特点:数值较小且为非负整数。如一周有7天等。C语言提供了一种枚举(Enum)类型,能够列出所有可能会用到的取值,并给它们取一个名字。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
{
    enum Sex
    {
         //枚举常量     性别
    MALE,
    FEMALE,
    SECRET
    };
    enum Sex s = FEMALE;  //利用枚举常量给变量赋值
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n",SECRET);
    return 0;
}

在使用枚举常量的时候,需要注意以下几点:

  • 不能对枚举常量赋值,只能将它们的值赋给其他的变量。
  • 不能再定义与枚举常量名字相同的变量。
  • 不能用&取得它们的地址。

以上就是C语言中常见的几种常量,合理使用常量可以使程序可读性更强,条理清晰,易于维护。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!

原文链接:https://blog.csdn.net/JT_GUO/article/details/120211985

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部