2021-07-28

                               常量与变量
 大一整学年都在跟c语言打交道,通过一年的学习,从零基础学起,到现在已经掌握了c语言的大部分语法。于是,我就利用空余时间整理c语言的知识。
 1、常量:在程序运行期间,固定发生不变的值;
      常量通常分为直接常量和符号常量;

(1) 直接常量根据数据类型的不同,可以分为以下不同种的常量。
整形常量——7;
小数(浮点数)常量——7.0
字符常量——a(用单引号标识);
字符串常量——abc;
进制常量——ox32;
(2)符号常量
符号常量有两种常用的书写方式:
一是宏定义里的:#define AMOUNT 7;#define AMOUNT 7
一 种是加入const限制符,如const int N 7。const int N 7;
这两种方法表面上是进行了符号常量化,不过还是有本质区别的:define是编译的预处理阶段起作用,而且define只是简单的替换作用,无类型检查,且define定义的宏常量在内存有若干个备份,define定义的常量不能调试;const是在编译,运行时起作用,const有相应的数据类型,但const定义只有一个备份,const定义可以调试。所以相比而言,const定义的符号常量更安全,因为const会进行类型检查,const会分配空间,同时减少空间,提高效率。
(3)特点:常量的值在运行期间不会发生改变,也不能再被赋值。相当于只能读,不能写。
2,变量:其值在运行期间可以发生改变的量。一个变量需要一个类型,一个储存空间,一个名字。
一个变量的实施有如下部分组成:
(1)类型:整数,浮点数,字符,指针等。
(2)声明:在使用变量之前,必须对变量进行声明(为编译器所做的描述)。声明变量需要对其指定一个类型和名字。
int height;
(3)赋值:变量可以通过赋值来得到值; int a; a=1;
(4)特点:变量其值可以改变,意味着它可以被覆盖,写入,赋值。但每一个变量需要有名字和相应的内存地址。
在这里插入图片描述

以例3的代码为例,代码中已经声明一个整形变量a,,即a的类型已经确定,是一个整形,在32位机和64位机上int类型占据4个字节。其中a就代表这int类型的这4个字节的空间,a的地址就是连续4个字节的开始的地址0x000。因此,我们知道a变量就代表这四个连续的字节的空间,a变量地址就是这连续四个字节的开始地址0x000.
变量的值和名称:变量名在声明的时候就与内存某一地址绑定在一起了,可以通过变量名或者地址来找到内存区域。;
变量值时变量所对应的内存区域内存放的二进制。变量的值不会因为变量的类型发生改变而改变,当变量类型被转换为对应类型时,内存区域的二进制序列以该类型的形式翻译出来,这也是强制转换的原因。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

影不在遗忘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值