C语言的数据结构是以数据类型形式出现的。C的数据类型如下:
常量:在程序运行过程中,其值不能被改变的量称为常量。
常量区分为不同的类型,如:
- 整型常量:12、0、-3
- 实型常量:4.6、-1.23
- 字符常量:‘a’、‘d’
字面常量(直接常量):常量一般从其字面形式即可判别是什么数据类型,这种常量称为字面常量或直接常量。
符号常量:用一个标识符代表一个常量的,称为符号常量,即标识符形式的常量。
例3.1 符号常量的使用
#include <stdio.h>
#include <stdlib.h>
#define PRICE 30
int main(void)
{
int num,total;
num = 10;
total = num * PRICE;
printf("total = %d",total);
return 1;
}
total = 300
程序中用
#define
命令行定义PRICE
代表常量30
,此后凡在同一项目中用到PRICE
都代表30
,可以和常量一样进行运算。
注意: 符号常量不同于变量,它的值在其作用域(在本例中为主函数)内不能改变,也不能再被赋值。如再执行“PRICE=40”是错误的。
习惯上,符号常量名用大写,变量名用小写,以示区别。
使用符号常量的好处:
(1)含义清楚。
如上面的程序中,看程序时,从 PRICE 就可知道它代表价格。因此定义符号常量时应考虑“见名知意”。
(2)在需要改变一个常量时,能做到“一改全改
”。
例如在程序中多处用到某物品的价格,如果价格用常数(直接常量)表示,则在价格调整时,就需要在程序中作多处修改;如果用符号常量 PRICE 代表价格,只需要改动一处即可。如:
#define PRICE 35
在程序中,所有以 PRICE 代表的价格就会一律自动修改。
一个变量应该有一个名字,在内存中占据一定的存储单元。在该存储单元中存放变量的值。
请注意区分变量名和变量值这两个不同的概念,如下图。
- 变量名实际上是一个符号地址,在对程序编译链接时由系统给每一个变量名分配一个内存地址。
- 在程序中从变量取值,实际上是通过变量名找到相应的内存地址,从其存储单元中读取数据。
标识符(identifier):用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。
简单地说,标识符就是一个名字。
C语言规定标识符只能由字母、数字和下划线
三种字符组成,且第一个字符必须为字母
或下划线
。
//合法的标识符和变量名
sum,average,_total,Class,day,month,Student,
_name,tan,lotus_1_2_3,BASIC,li_ling
//不合法的标识符和变量名
M.D.John,¥123,#33,3D64,a>b
注意: 大写字母和小写字母被认为是两个不同的字符。因此
sum
和SUM
,class
和Class
是两个不同的变量名。
- 一般变量名用小写字母表示,与人们日常习惯一致,以增加可读性。
- 变量名应注意“见名知意”。
- 变量名的长度不超过255字符。
- 使用“先定义,后使用”原则。
本节完 |
---|