(1)const 修饰的变量是只读的它不是真正的常量,本质还是变量,只是告诉编译器不能出现在赋值号左边!
(2)const 修饰的局部变量在栈上分配空间
(3)const 修饰的全局变量在全局数据区分配空间(vc、gcc 会将其放入常量区bcc 放入全局数据区)
(4) const 只在编译期有用在运行期无用
(1)volatile 可理解为“编译器警告指示字”
(2)volatile 告诉编译器必须每次去内存中取变量值
(3)volatile 主要修饰可能被多个线程访问的变量
(4)volatile 也可以修饰可能被未知因数更改的变量
volatile 强制编译器减少优化必须每次到内存中去取值