今天调试代码的时候发生一个很奇怪的问题,大致如下:
#define DBG_ADR 0x7000
void function(INT32U OpAdr, INT16U OpVal) { ………… }
然后我调用此函数时候如果是
1.function(DBG_ADR + tOffset, tVal); 就会有问题,而改写成为 2.function(tOffset + DBG_ADR, tVal); 就正常,
求问:ADS的编译器是否对于宏变量的操作位置有规定?碰到宏与变量一齐操作时候必须放到后面????? |