1.变量的本质是内存单元,可以存储数据也可以读取数据;
2.常量一旦被定义就不能重新定义或者取消定义,所以常量在定义的时候必须初始化。变量则可以改变;
3.常量的值可以修改,修改常量的操作会导致编译出错,变量则可以通过赋值进行改变;
4.常量在编译的时候,可以以立即数形式编译进指令,比起使用内存的变量执行效率更高;
5.常量本身没有地址属性(除字符串常量等),而变量有地址属性。所以常量只能用做右值,而变量左值右值都可以。