遭遇字节对齐导致的错误一例

  由于系统不支持UTF8中文,所以改成了wchar_t。我看了一下字幕,0、2、4不显示,1、2、3显示。

  • 仔细看了代码,没有发现可疑的地方。相关代码就改了几处。
  • 回滚代码,正确。
  • 如果直接赋值,正确。
  • 同事建议换个字体,结果出来的是乱码。说明整套流程是对的。

  后来猜测到是字节对齐问题。0行有两个字节被占用了。

  原因找到了,就有办法解决。

相关推荐
Felven9 小时前
C. Brr Brrr Patapim
c语言·开发语言
Zwawa12 小时前
嵌入式OLED表驱动菜单:用一张表、一个栈和一个窗口重写表驱动菜单
c语言·单片机·嵌入式
沐晓时光1 天前
C语言入门,内存函数知识讲解
c语言·开发语言
Zwawa1 天前
C语言函数指针与宏实战:从回调、表驱动菜单到X-Macro,讲透嵌入式代码解耦
c语言·单片机·嵌入式
David猪大卫1 天前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
HPtiger1 天前
C++ 入门笔记:从 C 到 C++ 的核心过渡(命名空间、输入输出、缺省参数、重载、引用、内联)
c语言·c++·学习
安妮细水长流1 天前
ad7124
c语言·单片机
Zwawa2 天前
用两个按键做一个OLED菜单:先把选择和执行分开
c语言·单片机·嵌入式
心仪久了会沦陷2 天前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
Severus_black2 天前
【C++初阶】list使用及相关实现,思路顺滑流畅!
c语言·数据结构·c++·stl·list