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++实现日期计算器的相关资料,基于C++编写的简单的日期计算器,供大家参考,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • C语言求幂计算的高效解法

    C语言求幂计算的高效解法

    这篇文章主要介绍了C语言求幂计算的高效解法,分别演示了求幂运算与整数次方的解法,具有不错的参考借鉴价值,需要的朋友可以参考下
    2014-09-09
  • vscode使用官方C/C++插件无法进行代码格式化问题

    vscode使用官方C/C++插件无法进行代码格式化问题

    这篇文章主要介绍了vscode使用官方C/C++插件无法进行代码格式化问题,本文通过截图实例代码相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • 简要对比C语言中的setgid()函数和setregid()函数

    简要对比C语言中的setgid()函数和setregid()函数

    这篇文章主要介绍了C语言中的setgid()函数和setregid()函数的简要对比,是C语言入门学习中的基础知识,需要的朋友可以参考下
    2015-08-08
  • 基于Qt+OpenCV实现图像灰度化像素

    基于Qt+OpenCV实现图像灰度化像素

    在图像处理领域,OpenCV是一款强大而广泛应用的开源库,能够提供丰富的图像处理和计算机视觉功能,本文将介绍如何利用Qt 编辑器调用OpenCV库对照片进行换底色处理,实现更加独特和吸引人的效果
    2023-11-11
  • C++利用 _findfirst与_findnext查找文件的方法

    C++利用 _findfirst与_findnext查找文件的方法

    这篇文章主要给大家介绍了关于C++利用 _findfirst与_findnext查找文件的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • 基于C语言实现简单的12306火车售票系统

    基于C语言实现简单的12306火车售票系统

    火车售票系统给我们的出行带来了极大的方面,那么他基于编程是如何实现的呢?今天小编抽时间给大家分享一个使用C语言写的一个简单的火车票系统,感兴趣的朋友参考下
    2016-09-09
  • C语言动态规划点杀dp算法LeetCode炒股习题案例解析

    C语言动态规划点杀dp算法LeetCode炒股习题案例解析

    这篇文章主要介绍为了C语言动态规划点杀dp算法,本文以LeetCode炒股习题案例来为大家进行详细解析,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2022-02-02
  • C++11中互斥锁的使用

    C++11中互斥锁的使用

    本文主要介绍了C++11中互斥锁的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • C++11中std::packaged_task的使用详解

    C++11中std::packaged_task的使用详解

    这篇文章主要介绍了C++11中std::packaged_task的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02

最新评论