【嵌入式C】在Keil中结构体的字节对齐

【嵌入式C】在Keil中结构体的字节对齐,第1张

使用关键字 #pragma pack (1) 开始字节对齐,使用 #pragma pack () 结束。

比如:

这样做的好处就是,在写入Flash的时候不会因为uint16_t/uint32_t这些类型数据而出错。

我遇到过,我觉得可能是keil的程序以及字符编码之类的问题

以下是baidu搜来的

来自http://blog.sina.com.cn/s/blog_3f808fe401008yqh.html

Keil

uVision3与uV2相比增加了对更多型号单片机的支持,另外还对一些的方面进行了优化。不过它却优化出一个让人头疼的问题,那就是光标位置显示不正确!这一问题给程序的编写带来了许多不便.不过不用担心,这是有解决办法的。

方法是:进入uV3,点【Edit】→【Configuration】→[Colors&Fonts],在[Window]框中有对Asm文件编辑状态和C文件编辑状态等字体与颜色的设置。选中[8051:Editor

Asm

Files],然后再点击[Font]后面的按钮,打开字体选择对话框。选择字体:Fixedsys,字号设置为10(一定要是10)。这样Asm文件编辑状态就设置好了。同样,再选择[8051:Editor

C

Files],把字体同样设置为Fixedsys和10好字体。点击确定。设置完成!

还有个方法:

来自http://www.51c51.com/BBS/dispbbs.asp?boardid=15&ID=28108

很容易,只要修改一下keil安装目录下的tools.ini文件就行

用记事本打开tools.ini后在第三行后增加一行:ANSI=1

如:原内容是

[UV2]

ORGANIZATION="China"

NAME="User",

"HeartFly"

EMAIL="dong-heart@163.com"

BOOK0=UV3\RELEASE_NOTES.HTM("uVision

Release

Notes",GEN)

[C51]

修改后为

[UV2]

ORGANIZATION="China"

NAME="User",

"HeartFly"

ANSI=1

EMAIL="dong-heart@163.com"

BOOK0=UV3\RELEASE_NOTES.HTM("uVision

Release

Notes",GEN)

[C51]

OK,解决~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11796912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存