今天在一个技术群里,一个网友突然说,莫名奇妙的碰见一个C2143错误,百思不得其解。我们就叫他把代码发出来。群里大家都是写C/C 的,一看都说没错啊...
我开始也没看出来,错在哪里,还专门把VC打开来,把代码贴进去。build后,确实没问题啊?奇怪了...后来一个资深的专门写C代码的朋友,说:你把变量的声明放在函数体中间了,C语言定义变量的声明都在函数开始位置。
汗,惭愧!以前还说自己写C/C 的呢,两者的细微区别都没认真揣摩。
在VC中要使变量声明可以在函数体中间,那么就要告诉编译器,我们写的是C 代码,请编译为C 代码(/TP),设置如下:
工程属性-->C/C -->高级-->编译为-->编译为C 代码(/TP)
阅读(4964) | 评论(0) | 转发(0) |