#include <stdio.h> #define POCKETMONEY 10 //定义常量及常量值 int main() { int POCKETMONEY; POCKETMONEY=10; //小明私自增加零花钱对吗? printf("小明今天又得到%d元零花钱\n", POCKETMONEY); return 0; }
当然我是乱来的 但还是想知道
#define POCKETMONEY 10
这一句是预处理指示。在将代码送给编译器之前,预处理器会将代码中的POCKETMONEY替换成10(双引号中的文本不会被替换),所以编译器看到的代码是:
int 10; 10=10; ...
C语言规定变量名必须以字母或下划线开头,所以这个命名不合法,编译不过。