C语言中的四种常量详解

 更新时间:2021年10月18日 10:02:28   作者:鹿九丸  
本篇文章是c语言基础篇,主要讲述一下常量,常量即不可被直接修改的量(const修饰的常变量可间接修改,后续文章会继续说明)请大家持续关注脚本之家

1、字面常量

字面常量正如我们从字面上简单理解的那样,是最简单的常量,下面给出例子帮助大家理解:

//1.字面常量
100;   //整型常量
3.14;   //浮点常量
"abfdj";   //字符串型常量
'w';   //字符型常量
int a[100];   //其中的100也是常量,此处需注意,[]中的数字必须是常量,后面我们会用到这个

2、const修饰的常变量

const修饰的变量具有常量的某些特征,其中最主要的特征就是const修饰的变量不可被改变,但注意,被const修饰的变量本质上仍是变量,只是不可被改变,如同被static修饰的局部变量生命周期发生改变,但是作用域却不发生改变一样,本质上仍是局部变量,作用域仍在所定义的代码块内,事实上,在计算机中还有一些诸如此类的例子,此处不再一一列举,下面让我们来了解一下这种变量吧。

 此处就可以看出被const修饰的变量不可再被修改。下面将给大家展示一下被const修饰后的变量本质并未发生改变。

上面我们已经提及到,数组的[]内必须是常量,我们在把const修饰的变量a放入[]内时i,编译器会报错,所以const修饰的变量本质上仍是变量。

3、#define定义的标识符常量

 由此可以得到,#define修饰的是不可修改的常量(第一个图可以看出不可修改,图二可以看出是常量,至于具体的原因,以后#宏定义为何会这样,以后有机会会给大家作出相应的解释,目前大家先记住即可。

注意:一般#define 定义的常量名字(实际上这并不是我们通常了解的定义变量的那种定义,是一种宏定义,以后有机会会给大家讲,今天不作详细的阐述)用大写字母表示,理论上可以用小写,但作为一个优秀的程序员,相信大家能够做到这一点,虽然只是一个小小的细节,但也能够体现出一个程序员的自我修养,希望大家能够注意到。

4、枚举常量

从上面可以看出,枚举类型确实是常量,但需要注意两点,第一点,枚举类型的数据值一般是大写,如图中的MALEFEMALESECRET,虽然说理论上也可以小写,但具体为什么我在此强调,原因同上;第二点,枚举类型定义时,{}内的分隔符是逗号,并且一般会像图中一样放在不用的行内,可以使代码看起来更简洁。

总结

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

相关文章

  • C语言小游戏之小熊跳板功能的实现

    C语言小游戏之小熊跳板功能的实现

    这篇文章主要介绍了C语言小游戏之小熊跳板功能的实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • 解析C++多文件编程问题

    解析C++多文件编程问题

    在某些场景中,考虑到编译效率和可移植性,#pragma once 和 #ifndef 经常被结合使用来避免头文件被 重复引入,这里介绍用 _Pragma 操作符避免头文件重复引入的问题,感兴趣的朋友跟随小编一起看看吧
    2021-10-10
  • C++文件流读写操作详解

    C++文件流读写操作详解

    本文详细讲解了C++文件流读写操作的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-11-11
  • C语言16进制与ASCII字符相互转换

    C语言16进制与ASCII字符相互转换

    大家好,本篇文章主要讲的是C语言16进制与ASCII字符相互转换,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • C++ Template 基础篇(一):函数模板详解

    C++ Template 基础篇(一):函数模板详解

    这篇文章主要介绍了C++ Template函数模板,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 一文带你搞懂C语言预处理宏定义

    一文带你搞懂C语言预处理宏定义

    这篇文章主要为大家详细介绍了C语言预处理宏定义#define,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-10-10
  • c语言阶乘之和问题示例详解

    c语言阶乘之和问题示例详解

    这篇文章主要给大家介绍了关于c语言阶乘之和问题的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用c语言具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • 详解C语言gets()函数与它的替代者fgets()函数

    详解C语言gets()函数与它的替代者fgets()函数

    这篇文章主要介绍了详解C语言gets()函数与它的替代者fgets()函数的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • 利用C语言实现经典游戏斗兽棋

    利用C语言实现经典游戏斗兽棋

    《斗兽棋》是一款棋类游戏,整个游戏画面是分为两块区域,中间有河流分割两块区域,有桥梁可以让彼此的动物过河,要取得胜利,必须占领那一边动物的巢穴获胜利。本文将用C语言实现这一游戏,需要的可以参考一下
    2022-03-03
  • 数据结构 栈的操作实例详解

    数据结构 栈的操作实例详解

    这篇文章主要介绍了数据结构 顺序栈的定义、初始化、空栈判断、入栈、出栈操作的相关资料,需要的朋友可以参考下
    2017-06-06

最新评论