为什么在keil里定义了结构体变量赋不了值,而同样的代码在IAR中就可以赋值。

如题所述

第1个回答  推荐于2018-04-12
结构体与结构体之间的赋值,在标准的ANSI C语言里是不允许的,这个楼主要明白。
Keil也好,IAR也好,AVRstudio,Vc++等等的这些个IDE环境,都是基于ANSI C语言的,所不同的是,它们在C语言的基础上做了扩展,比如说 Keil C51,就扩展了 bit 这种数据类型,Avrstudio就扩展 二进制数据表示方法 "0b",VC++扩展了结构体内允许带有函数变量,IAR则扩展了结构体相互赋值,说到这里,大概楼主就明白了吧,因为Keil没有扩展结构体相互赋值这个功能。本回答被提问者和网友采纳