请教一个#define的简单问题,谢谢!
有段程序中出现类似如下的情况,不知是何含义,望高手指点:
#define A (aabbcc) 0
#define B (bbaacc) 1
#define C (ccbbaa) 2
...
我只指导一般都是这么用的:
#define A B
为什么后面多了个数字??
如果是整个替换后面的部分也应该用大括号括起来吧?
这个就看不大懂了……
[解决办法]
严格意义上来说,应该用括号括起来。
#define A (aabbcc) 0
A为aabbcc类型的0
[解决办法]
最好括起来
跟强制类型转换差不多
[解决办法]
应该是强制类型转换!
[解决办法]
首先要明白#define编译器在编译的时候是完全替代,不管你#define A B 还是#define A B C....其实都没有错误的,这是根据你个人需要。所以不要单独的看#define a b就觉得奇怪,一点都不奇怪,只是根据自己的需求进行替代而已。你管他后面有多少个。只要替代以后的代码有意义就行了。
[解决办法]
就是强制类型转换