常量


1. 字面常量/直接常量

  • 数值型常量

    • 整形常量:1 2 3
    • 实型常量:1.1 2.2
  • 字符型常量(单撇号之间)
    • 普通字符型常量:’a’ ‘A’
    • 转义字符常量:’\n’
    • 字符串常量:”helloworld”

2. 符号常量

  • 用一个符号名代表一个常量

    • #define PRICE 20

常变量const


【胡思乱想】:

  • int num = 10;

    • 变量名是名
    • 变量是变量值

变量名的使用:就是当初发明c/c++语言的人,创造的一种方便程序员读写内存单元的办法,而且以不同权限声明的变量名,就有不同的读写权限,一个内存单元,被多个变量名打开。默认情况下,也就是最常使用声出来的变量名具有读写的权限。这和文件IO是一个性质的东西,但是比文件IO更简单直接。
内存单元:寄存器
指针变量名打开的那个寄存器里放:带权地址
带权地址的那个寄存器里放:权限下的档案
变量名打开的那个寄存器里放:权限下的档案

  • const :谷歌翻译:常量
  • 我理解为:只读的东西
  • 插入一个思想:文件IO
    • 变量名:我理解为问价描述符
    • 内存单元:寄存器
  • 下面为了直接,所以直接讨论变量名打开的内存单元
  • 插入一种思想:铺路设置哨卡
    • 我们平时声明紧接着定义一个变量,之后就开始拿声明的那个变量进行各种操作
    • 其实,一块内存空间,被程序使用了以后,我们可以声明其他好多变量名来操作这块内存,或者通过指针操作这块内存。
    • 于是就出现了引用,指针
    • 但是我们在声明这些变量时,可以修饰一下变量,其实就是给变量设定权限,权限可大可小,变量之间互补干涉
    • const就是一个修饰符,只赋予变量读内存空间的权限,没有写内存空间的权限,这使用与各种数据类型,因为每种数据类型都是由变量名和内存单元组成
    • 当我们给一块内存单元声明一个变量时,就相当于修了一条通向城堡的路,新声明就是铺新路,但是每条路互补交叉。
    • 路都是要限速限重的,在每个路口都有哨卡
    • 为了保护城堡,越往外,对路设的条件越苛刻,所以权限越“继承”越苛刻
    • 普通变量不可以做为const变量的引用
      • int A= 10;
      • const int B = 10;
      • int &a = A;//正确
      • int &a = B;//错误
    • const变量可以作为普通变量的引用
      • int A = 10;
      • const int B = 10;
      • const int &a = A;//正确
      • const int &a = B;//正确
  • const 放置位置
  • *

  • 插入一个思想:宇宙中的地球

    • 内存单元:上帝眼中宇宙中完整的地球
    • 指针(坐标):上帝分给各种外星人带有权限的地球坐标
      • 现在各种外星人手里都有地球的坐标,都可以到达地球,但他们要严格按照权限来做事
    • 指针变量内存单元:外星人手里的带权限的坐标
      • 由于上帝要保护地球,所以告诉外星人的地球坐标都加上了不同的权限

        • 地球 *p_a = &地球;//A类外星人拿到任意权限的地球坐标
        • const 地球 *p_b = &地球; //B类外星人拿到只能访问地球的坐标
    • 指针值(*p)内存单元:每种外星人权限下的地球
  • 再插入一种思想:学校公司
    • 10:学校、公司
    • int a = 10;
    • int b = 10;
    • int c = 10;
    • const int A = 10;
      • 学生abc都说自己去学校
      • 食堂阿姨A说自己去公司
      • 学校、公司指同一个地方
      • 自己把地点定位的性质不同,那做的事情也不同

常量和常变量(const)相关推荐

  1. C++ 文字常量与常变量

    以下代码编译运行平台是 Windows 64bits+VS2017. 使用 C++ 编程时,经常遇到以下几个概念:常量.文字常量.字面常量.符号常量.字符常量.常变量.字符串常量等,网上的资料描述的不 ...

  2. 2021-09-13 文字常量和常变量

    1.2 文字常量和常变量 常量可以直观地理解成"值不可改变的量".在C++语言中,常量分为两种:文字常量(literal constant)和常变量(constant variab ...

  3. C++/C中const的区别(常量和常变量)

    1. C语言中被const修饰的叫常变量 #include <stdio.h>void main() {const int v; //ok } C语言中,const修饰的量可以不初始化,但 ...

  4. C语言的常量、变量和常变量

    在计算机高级语言中,数据有两种表现形式:常量和变量. 一.常量 常量的定义:在程序执行过程中,不能被改变的量. 常量分为5种:整形常量.实型常量.字符常量.字符串常量.符号常量. 整型常量: 如0,1 ...

  5. C++:常类型Const

    常类型:使用类型修饰符const说明的类型,常类型的变量或对象成员的值在程序运行期间是不可改变的. 3.10.1 常引用 如果在说明引用时用const修饰,则被说明的引用为常引用.如果用常引用做形参, ...

  6. 常引用、常量指针、指针常量、指向常量的常指针、空指针与野指针解释

    1.一.基础知识 引用并非对象 引用必须初始化 引用只能绑定在对象上,而不能与字面值或某个表达式的计算结果绑定在一起 类型要严格匹配 int &a = 10; //错误:引用类型的初始值必须是 ...

  7. 常指针、指向常量的指针、指向常量的常指针

    三者的区分 简而言之- 常指针:地址不可变,内容可变 指向常量的指针:地址可变,内容不可变 指向常量的常指针:地址不可变,内容不可变 样例 代码如下: #include <iostream> ...

  8. C++常类型(const)

    常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的.因此,定义或说明常类型时必须进行初始化. 一般常量和对象常量 1. 一般常量 一般常量是指简单类型的常量.这种常量在 ...

  9. 【C/C++】符号常量 常变量

    1.常量 在程序运行过程中,其值不能被改变的量叫做常量. 常用的常量有如下几类: 整型常量 实型常量 字符常量 普通字符 转义字符 如:\\表示一个反斜线:\n表示换行,将当前位置移到下一行的开头:\ ...

  10. 彻底理解——指针常量和常量指针、指向常量的常指针

    前言   在汉语中,定语一般都放在中心词的前面,像C语言和C++语言这种技术性语言,更是如此.   所以定语重要还是中心词重要,肯定是中心词重要.   如:美丽的女孩 美丽的是定语 女孩是中心词    ...

最新文章

  1. python中digits什么意思_在Caffe中使用 DIGITS自定义Python层
  2. Fiori launchpad里Enter Group name这个tile是怎么配置出来的
  3. 堆叠自编码器中的微调解释_25种深刻漫画中的编码解释
  4. 消息中间件系列(二):Kafka的原理、基础架构、以及使用场景
  5. c#中属性自动完成快捷键
  6. 【英语学习】【Level 07】U05 Best Destination L6 Paradise on Earth
  7. 多语言网站开发 不完全技术分析收录
  8. Pascal VOC 数据集国内下载
  9. How to learn Lua
  10. c - 数据结构实验之图论三:判断可达性_IT世界的诡异事件,2020为何算法和数据结构面试题会如此火爆?...
  11. c语言之fopen参数(r+,w+,a+)
  12. legend---六、php脚本变量的生命周期是怎样的
  13. python读取csv数据出错_在python中读取csv文件时出现错误“no such file or directory”...
  14. Android实现组件之间同步的回调通信
  15. Eclipse探秘-第一章-Eclipse启动(1)
  16. 液压伺服控制技术和电液比例控制技术
  17. 【英语语法入门】 第22讲 完成时
  18. MySQL学习笔记10(流程控制、函数)
  19. java或android国内外手机号码正则表达式
  20. AD网络标号高亮设置

热门文章

  1. vmware设置桥接时复制物理网络连接状态是什么意思?
  2. html如何实现雪花飘落,如何使用HTML5 canvas实现雪花飘落
  3. DNS无法解析IP_DNS大全(114DNS 、阿里DNS、百度DNS 、360 DNS、Google DNS)
  4. ios13 微信提示音插件_iOS 13 替换微信提示音(教程),简单操作
  5. php 与shell有什么关系,shell是什么意思
  6. 算法笔记(七)扩大感受野SPP/ASPP/RBF
  7. 【Oracle】并行等待之PX Deq: Join ACK
  8. 8.用C/C++实现一个科学计算器———(超级详细完整,包含C/C++版本和Qt版本)
  9. osm 搭建离线地图_搭建开源地图服务 - 利用OSMGIS和iD
  10. 《深入理解Android:Wi-Fi,NFC和GPS》章节连载[节选]--第九章 深入理解GPS