完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好,在尝试启动一个包含MPLABX和XC16编译器结构联合的结构时,我遇到了一个编译错误。我在Xplorer16板上使用PIC24FJ128GA010。下面的代码在Atmel Studio和gcc编译器编译时工作,但不知何故,我在初始化器中指定的XC16:../main.c:76:5:error:un.field'x'x上出现了一些编译错误。lt;anony.>')./main.c:77:5:error:initializer中指定的未知字段'x'./main.c:78:5:error:initializer中指定的未知字段'x'./main.c:78:5:warning:struct初始化器中的过剩元素./main.c:78:5:warning:“acc1”的近初始化./main.c:83:5:error:un.f在initializer../main.c:83:5中指定的字段“y”:warning:初始化器周围的括号丢失。/main.c:83:5:warning:“‘acc2.<匿名>”的初始化附近”)这是我的代码:/================================//Line 59typedef struct{union{struct a1{uint8_t win;“uint8_t.”;{x32uint32_t draw;}x;struct a2{uint8_t cheat; }y; }}y; }}uint16_tRegNuNum}___y}}}x x x;xxxxxxxxxxxxxxccccccca2{{{uintuint8uint8_t8_ttchechechechechechechechechecheat;}}}}}}}}}}};uint16xxxxxxxxxxxxxxxxxxxxxxxxxcccccccccccca2{{{x x x x x x x x x x x x x x x x x x x x=====================请帮我解决这个错误。如果你有任何问题可以帮助你理解这个案子,我会乐意回答的。
|
|
相关推荐
4个回答
|
|
我不确定,但是为了使该语法工作,编译器必须遵守一些较新的C标准。也许你可以强迫GCC添加一些命令行选项(约翰,杰夫和其他人会更好的知道!)
|
|
|
|
匿名结构/联盟是一个C11特征,它不是标准XC16所遵从的。它们通常作为扩展来支持,但是XC16不支持用指定的初始化器初始化匿名联合,这并不奇怪。如果命名这些联合,则可以初始化它们。
|
|
|
|
线索在:-./main.c:76:5:warning:initializerEdit周围缺少大括号-为了清楚起见,额外的大括号标记匿名联合,因此编译器在.x.win.win的正确位置查找实际上是在typAcc.InternalCompilerAnonymousUnionName.x.win,其中InternalCompilerAnonymousUnionName是由编译器分配的。正如您最初编写的,它希望将值分配给typAcc.x.win,它不存在。
|
|
|
|
你好,西蒙,谢谢你的帮助。问题现在解决了。
|
|
|
|
只有小组成员才能发言,加入小组>>
5242 浏览 9 评论
2031 浏览 8 评论
1955 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3207 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2256 浏览 5 评论
778浏览 1评论
669浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
597浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
679浏览 0评论
577浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 02:18 , Processed in 1.310959 second(s), Total 82, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号