C语言里面的常量是什么?

C语言里面的常量是什么?

1,2,3,4,5,6,7,8,9

这些就是常量

直接使用不是这些数值不是很不直观吗

这句话

if(len < 10){} 能知道这是要表达什么意思吗

如果这样呢 if(len < MAX_LEN){} 能知道这是小于最大长度

所以用通常用宏的方式定义一个常量(也就是在编译的时候把MAX_LEN替换成了10)

#define MAX_LEN 10

int const MAX_LEN = 10;

算是“常量”(注意加了引号了啊),这只是定义了一个变量 MAX_LEN 但是这个变量是只可读不可写的,也能算是“常量”(注意加了引号了啊)但是你 *(int *)&MAX_LEN = 9; 取地址再转成(int *)的指针不就能改变它的值了吗,而且还占用内存。

所以在C语言多是使用宏的方式。