expected '=', ',', ';', 'asm' or '__attribute__' before

expected '=', ',', ';', 'asm' or '__attribute__' before
expected ')' before

今天使用avr-gcc 4.3.3编译程序出现一系列以上error,研究了半天都毫无所获。这似乎是gcc下比较容易遇到的问题,以前也遇到过这种情况,但都没有记录、整理,所以今天遇到的时候又手足无措了。

经过在网上的疯狂搜索和结合自己程序的情况,我发现这是可能由多种原因引起的、比较模糊的错误提示,其所指示的错误位置也一般都不正确。

错误提示看上去像是缺少某些符号引起的语法错误,然而实际上由未正确包含头文件引起的可能性比较大。在我的程序中仅仅是由于在C文件中先包含了本文件所对应的头文件,或包含了所依赖的库文件造成的。在网上搜索的结果中也不乏头文件循环包含或根本未包含需要的头文件的原因。

这次吃一堑长一智,写一个文章记录一下并于大家分享。个人认为,这种问题可以通过书写程序时的良好习惯加以避免。当然,对于这一问题,我还是没有找到十分详尽的原因分析,自己也只是就自身的情况做一记录,还希望对此有更多体会和研究的前辈指点。


【2014/05/03】  今天发现如果在声明一个结构体类型(而非定义结构体类型的变量)时错误的对成员进行初始化,也会导致类似的错误出现。
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值