const使用于C语言中,用于定义常变量,即用 const 定义的变量的值是不允许改变的,即不允许给它重新赋值,即使是赋相同的值也不可以。
因此有的时候也称定义的为只读变量。
虽然 const 定义的是只读变量,就相当于是定义一个常量。但是只读变量也是变量,所以 const 定义的变量仍然不能作为数组的长度。但是需要注意的是,在 C++ 中可以!C++ 扩展了 const 的含义,在 C++ 中用 const 定义的变量也可作为数组的长度。
其实虽说const的用法和define有那么一丝丝相似,但是其实差别还是很大的。
1.首先指令的执行时间就不同,define是预编译指令,其定义的宏是在预处理阶段展开的;而const定义的只读变量是在编译运行阶段执行的。
2.本质上,const定义的是变量,define定义的是常量。
验证如下: