(2)const是在编译、运行的时候起浸染,而define是在编译的预处理阶段起浸染。
(3)define只是大略的字符串更换,没有类型检讨,在字符更换中可能会产生猜想不到的缺点;而const有对应的数据类型,是要进行类型安全检讨;
(4)define预处理后占用代码空间,而const占用数据段空间。

(5)const常量可以进行调试的,define是不能进行调试的,紧张是预编译阶段就已经更换掉了,调试的时候就没它了。
(6)const不能重定义,不可以定义两个一样的,而define就比较牛气了,它通过undef取消某个符号的定义,再重新定义。
(7)define可以用来防止头文件重复引用,而const不能。
(8)define不仅是定义常量,还可以定义带参数的宏,做到一定程度的泛型(利用#或者##操作符)。