const修饰的是只读变量,不是常量,其值在编译时不能被使用,因为编译器在编译时不知道其存储的内容.编译器通常不为普通const只读变量分配存储空间,而使将他们保存在符号表中,这使得他成为一个编译期间的值,没有了存储与内存的操作,使得它的效率也很高. 例如: #define M 3 //宏常量 const int N=5; //此时并未将N放入内存中 ······ int i=N; //此时为N分配内存,以后不再分配 int I=M; //预编译期间进行宏替换,分配内存 int j=N; //没