1. C语言常量与变量基础概念
在C语言编程中,常量和变量是最基础也是最重要的两个概念。它们构成了程序数据存储和处理的基石。作为从1990年代就开始使用C语言的开发者,我见证了这两个概念在各种项目中的应用演变。
变量本质上是程序中可被修改的存储单元。当你声明一个变量时,编译器会在内存中分配相应大小的空间。这个空间可以存储各种类型的数据,从简单的整数到复杂的结构体。变量的值可以在程序执行过程中被改变,这正是"变"量的含义。
c复制int count = 0; // 声明并初始化一个整型变量
count = 10; // 修改变量的值
常量则代表固定不变的值。与变量不同,常量的值一旦定义就不能被修改。C语言中的常量可以分为两大类:
- 字面常量:直接写在代码中的固定值,如
3.14、'A'等 - 符号常量:通过
#define或const定义的标识符常量
c复制#define PI 3.14159 // 使用#define定义的符号常量
const int MAX = 100; // 使用const定义的常量
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 常量详解与实战应用
2.1 常量类型系统
C语言中的常量支持多种数据类型,每种类型都有其特定的表示方法和使用场景。
整数常量是最常用的常量类型,支持三种进制表示:
- 十进制:常规数字表示,如
123 - 八进制:以
0开头,如0123(等于十进制的83) - 十六进制:以
0x或0X开头,如0x1A(等于十进制的26)
c复制int decimal = 123; // 十进制
int octal = 0123; // 八进制
int hexadecimal = 0x1A; // 十六进制
浮点常量表示实数,有两种表示形式:
- 小数形式:如
3.14、0.001 - 指数形式:如
3.14e2(表示3.14×10²=314)
c复制float pi = 3.14159f; // 单精度浮点
double distance = 1.496e11; // 双精度浮点,表示地球到太阳的距离(米)
字符常量用单引号括起来,如'A'、'\n'等。特别要注意转义字符的使用:
c复制char newline = '\n'; // 换行符
char tab = '\t'; // 制表符
char backslash = '\\'; // 反斜杠
字符串常量用双引号括起来,如"Hello"。字符串常量实际上是一个字符数组,以'\0'结尾。
c复制char greeting[] = "Hello"; // 等价于 {'H','e','l','l','o','\0'}
2.2 常量定义方法对比
C语言提供了两种主要的常量定义方式:#define预处理指令和const关键字。它们各有特点和适用场景。
#define宏定义:
- 在预处理阶段进行简单的文本替换
