c语言中define后大小有限制吗?-知识问答社区-代码-血鸟社区

c语言中define后大小有限制吗?

有的。

比如说C语言标准规定编译器至少支持宏的名字有63个字符(多的话意义不能保证),至少支持同时定义4095个宏,函数形的宏最多可能有127个参数。

然而,要看在程序中怎么用这个定义了。

比如:

#define AAA ‘a’

#define BBB 1024

char a=AAA,b=BBB;

由于AAA的定义与a的相匹配,实现正确赋值,而BBB与b不匹配,即使定义了超出b能表示的范围的数据也不能正确赋值。

所以要根据程序中的使用来决定#define的数据如何定义、定义取值的范围。

请登录后发表评论

    没有回复内容