define定义的符号常量和用const定义的变量有什么不同?为什么不用const修饰常量呢?

2025-03-06 12:19:53
推荐回答(2个)
回答1:

define 预编译期的。
const 是编译期的。

define 定义值一个符号 没有类型之分的
const 编译指定了类型。

为什么不用const修饰常量呢 。 const 修饰的表示一个常量。内部类型会常量折叠的,不会分配地址空间

回答2:

对于C++而言,一般不会用define定义符号常量。但是对于C语言,由于用const修饰的变量不能由另一个用const修饰的变量初始化,所以大大限制了const的使用……