小编pow*_*ear的帖子

包含unsigned char和int bug的C++ struct

好的,我的C++程序中有一个结构,如下所示:

struct thestruct
{
 unsigned char var1;
 unsigned char var2;
 unsigned char var3[2];
 unsigned char var4;
 unsigned char var5[8];
 int var6;
 unsigned char var7[4];
};
Run Code Online (Sandbox Code Playgroud)

当我使用这个结构时,在"var6"之前添加3个随机字节,如果我删除"var5"它仍然在"var6"之前,所以我知道它总是在"var6"之前.

但是,如果我删除"var6",那么3个额外的字节就消失了.

如果我只使用带有int的结构,则没有额外的字节.

所以unsigned char和int之间似乎存在冲突,我该如何解决?

c++ byte struct

5
推荐指数
2
解决办法
911
查看次数

标签 统计

byte ×1

c++ ×1

struct ×1