C语言中“|”符号的问题
LichY 2012-08-29 03:29:25 程序开头有这样的定义:
/*the fixed colors*/
#define BLACK 0
#define YELLOW(RED | GREEN)
#define MAGENTA(RED | BLUE)
#define CYAN(GREEN | BLUE)
#define WHITE(RED | GREEN | BLUE)
运行的时候提示错误是这样的:
test.c
C:\Documents and Settings\Administrator\test.c(15) : error C2010: '|' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(15) : error C2010: 'G' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(16) : error C2010: '|' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(16) : error C2010: 'B' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(17) : error C2010: '|' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(17) : error C2010: 'B' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(18) : error C2010: '|' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(18) : error C2010: 'G' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(18) : error C2010: '|' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(18) : error C2010: 'B' : unexpected in macro formal parameter list
C:\Documents and Settings\Administrator\test.c(35) : error C2065: 'YELLOW' : undeclared identifier
C:\Documents and Settings\Administrator\test.c(41) : error C2065: 'WHITE' : undeclared identifier
C:\Documents and Settings\Administrator\test.c(42) : error C2065: 'MAGENTA' : undeclared identifier
执行 cl.exe 时出错.
请问大家这个是什么问题?我用的是VC++6.0编译环境!谢谢!