#define LIMIT 100
这个方法是在预编译的时候进行字符置换,把程序中出现的标识符LIMIT置换为100。
LIMIT不是变量,没有类型,不占用存储单位,而且容易出错。
const int LIMIT = 100;
这个LIMIT是有类型的,占用存储单位,有地址,可以用指针指向它,但是不能修改它。
宏没有地址,而++操作是先从内存取值到寄存器 然后寄存器加一后再写入内存中必然涉及如地址操作