废话不多说 ,直接进入主题;
常量是什么:常量是程序中其值不发生变化的量。
C语言中有这几种常量 数值常量,字符常量,字串符常量,符号常量:如下图
1.数值常量
a:整型常量
例如 int型:32 11 55 -23 -99......
long int型 235L ,25458L -225L ..... 后面的L 可为小写 为了不与数字1弄混 这里不做示范
unsigned long int 型 256ul 125445ul -5556ul 可为大写
八进制整型常量 037u 0368L 155247UL 5455855uL
十六进制整型常量 0x111f 0x5245 0xb55L .....
b:实型常量
实型常量就是我们所说的带有小数的常数,也就是浮点数,在C语言,只有十进制表示,它有两种表达方式,小数表示和指数表示
小数表示:12.355 44. .689 可以省略小数部分或者整数部分 不能同时省略 小数点不能省略。
指数表示;就是小数后面加字母e表示指数 1e-2 这表示1*10^-2 0.15e10 表示0.15*10^10 ..............(指数可正可负 但必须是整数。)
浮点数,数字后面为F 那么表示float类型 如果为L 浮那么为long double 型 如果浮点常量后面不加字母,则表示是一个double型常数
2.字符常量:
字符常量是由一个字母或转义字符两边用单引号括起来表示,例如: 'a'、'D'、'\n' 等。
字符常量在计算机内存放的量,为该字符ASCII编码值,一共有255个 如下表
例如 ‘0’其编码值为48
八进制用'\ddd'表示,其中ddd代表三位八进制数。
例如:'\101'代表字母'A','\60'代表字符'0'(零)。
同理16进制十六进制用'\xhh'表示,其中hh代表两位十六进制数。
例如:'\x41'代表字母'A','\x30'代表字符'0'(零)。
转义字符如下图
“A ” 和‘A’的区别 “A”代表字符串 'A' 代表字符
举个例子 “ 猪是谁?” 它就是表示字符串:猪是谁?
在这说明下 ( char 是代表ascii的所以码值代表的字符 也就是255位)
例如‘a’ 的储存为 01100001
“a”的储存为 01100001 0000000 为什么它是这样 因为他储存为一个字符a 和一个字串符号“”
那么计算机分辨是否为字符和字串符 那么就是看后面是否有零 有零就是字串符 没零就是字符。
3. 符号常量
在C语言中我们还可以用一个与常量相关的标识符(标识符的概念在后面介绍)来代替常量出现在程序中,这种相关的标识符称为符号常量。
定义符号常量的方法是#define<标识符> <常量>
例如;定义符号常量age 的命令方法为:
#define age 18
使用符号常量对程序的好处:增加程序的可读性;增强可维护性;
如下是例子
请注意在下一张图片
由程序中我们可以看出PI 为3.1415926 那么输出结果为4*3.1415926 为什么我们计算机给出的结果却是12 ?
问题来了 ,这是因为什么?
这是因为我们的数据类型为整数 所以PI值它取得值为3 所以最后输出的结果为12 这就是数据类型不对造成的数据不准确。
这就是我今天所学习的内容 明天出解决如上问题的方法。