提示信息
Keil5
error C141: syntax error near ‘int’, expected ‘__asm’
Keil4
error C141: syntax error near ‘int’
解决方案:
1
2
3
4
5
6int a; int main(){ a=1; int b=2; }
c不支持中途定义,把变量定义放到函数中的最前面
原理
c是不可以中途定义的(c++显然可以),那么为什么会报这个奇怪的错呢?
对报错信息的解读:
syntax error near ‘int’, expected ‘__asm’
__asm是表明后面的语句是汇编语句,用法是
1
2
3
4
5__asm (汇编语句) __asm{ (汇编语句) }
我没写过汇编,具体参见https://blog.csdn.net/wcccg/article/details/78496940
可是没有汇编为什么会报汇编的错呢?因为int刚好是汇编的一种操作符(interrupt routine),表示中断,具体参见https://blog.csdn.net/sagittarius_warrior/article/details/53128613
keil在编译的时候无法理解这句语句,于是便找了一个理由,但是这个理由可能和你的错误没有关系
顺便说一句:
keil4的报错是error C141: syntax error near 'int’没有后面的expected ‘__asm’,连问题出在哪里都不知道= =,所以还是下个新版keil5吧,还支持中文编码。
问题还是出自于自己只学了c++没学c就去写单片机代码……
最后
以上就是爱笑手链最近收集整理的关于keil报错syntax error near 'int', expected '__asm'解决方案提示信息解决方案:原理的全部内容,更多相关keil报错syntax内容请搜索靠谱客的其他文章。
发表评论 取消回复