我在编写代码时发现了一些有趣的东西。我在我的代码中定义了一个宏,并且不小心将关键字int
用作该宏的参数的变量名。代码工作得很好,但我有点惊讶。我读过 C 中的关键字是保留字,不能用作变量名。
这是我的代码:
#include <stdio.h>
#define PRINT(int) printf("%d",int)
int main()
{
int x=2;
PRINT(x);
return 0;
}
谁能解释我为什么它工作正常?关键字是保留的,不能用作 C 中的变量名,或者这是 C 中宏的一些例外,这不是真的吗?