TI中文支持网
TI专业的中文技术问题搜集分享网站

CCS5.2的编译器支不支持可变参数长度的宏定义?

请教一个可能大家都认为常识的小问题,CCS5.2的编译器支不支持可变参数的宏定义?

如:#define printf(fmt,args…) serial_printf(fmt ,##args)

若是不支持的话,如果我想这么实现,应该怎么做呢?

望大家不吝赐教了,小弟在这感激了。

Yaoming Qin:

应该是支持的,你遇到了问题么

lufei2012:

回复 Yaoming Qin:

是的,编译报错,这一句通不过

#define printf(fmt,args…) serial_printf (fmt ,##args)

是需要设置某个选项吗?如果是的话,希望老师能给出设置步骤,谢谢。

Yaoming Qin:

回复 lufei2012:

这个我到没有仔细研究过,你的这个定义在pc的gcc下面能编译通过么?

lufei2012:

回复 Yaoming Qin:

gcc编译是没有问题的,但是CCS5.2的编译通不过,所以我怀疑是不是某个地方设置的问题,上述宏定义在您的CCS5.2上编译通过了?

Yaoming Qin:

您这个代码是哪里的,是不是您自己写的?另外,您可以参考下compilor的文档

Yaoming Qin:

回复 lufei2012:

在我给您的文档中,你可以参考5.16.1 Extensions,同时也可以参考这个http://processors.wiki.ti.com/index.php/GCC_Extensions_in_TI_Compilers#Enabling_GCC_Language_Extensions

gzz:

回复 Yaoming Qin:

想问下,dsp开发,ccs5.4为何不支持可变参数宏,是需要对编译器进行设置吗?

gzz:

回复 gzz:

通过设置buliding选项Language option可以编译通过

teng li1:

回复 gzz:

请问后来是怎么解决的这个问题?我是在CCS3.3也是遇到了这个问题,没法编译科比那参数长度的宏定义~

Yaoming Qin:

回复 teng li1:

可以看看编译器的文档,如果支持,有相应的参数的。但是您这个版本太老了,不能保证了。

赞(0)
未经允许不得转载:TI中文支持网 » CCS5.2的编译器支不支持可变参数长度的宏定义?
分享到: 更多 (0)