(1)
typedef struct{
double x;
double y;
}ShpPoint;
结果sizeof(ShpPoint)=0x10;(2)
typedef struct{
int x;
double y;
}ShpPoint;
结果sizeof(ShpPoint)=0x10;(3)
typedef struct{
int x;
int y;
}ShpPoint;
结果sizeof(ShpPoint)=0x08;
为什么第一种情况和第二种情况相同的阿??不知道而且如果改为
(4)
typedef struct{
int x;
int y;
double z;
}ShpPoint;
结果sizeof(ShpPoint)=0x10;
typedef struct{
double x;
double y;
}ShpPoint;
结果sizeof(ShpPoint)=0x10;(2)
typedef struct{
int x;
double y;
}ShpPoint;
结果sizeof(ShpPoint)=0x10;(3)
typedef struct{
int x;
int y;
}ShpPoint;
结果sizeof(ShpPoint)=0x08;
为什么第一种情况和第二种情况相同的阿??不知道而且如果改为
(4)
typedef struct{
int x;
int y;
double z;
}ShpPoint;
结果sizeof(ShpPoint)=0x10;
解决方案 »
- UNICODE字符集下 unicode转UTF-8问题!
- 【关于字符串处理小问题】
- 能不能用http post上传一个txt文件到服务器?
- Cstring变量怎么转为十六进制和ASC码,在线等
- ~~~~怎样判断 浮点数 是否为 非数值Nan?~~~~
- 求一个二进制数据块中简单00模式识别的算法
- 按钮有两种状态(增加、保存),按增加按钮之前,所有编辑框不能输入(非enablewindow(FALSE)或设READONLY属性),按增加按钮之后,所有将Edit
- 怎样在Edit控件输入汉字时敲回车键或是在设定的长度自动换行?
- 为什么我的VC又不正常运行了?
- 请问各位哪个安装发布软件好?请大家推荐一个,谢谢
- 关于帮助文件与主程序连接的问题
- 为什么edit控件不识别换行?
在project中选择setting,打开设置对话框,选择C/C++,在Category中选择
Code Generation,可以看到Struct member Alignment中的值为8Bytes,即
结构成员对齐是按8字节对齐的。选择为1Bytes,重新编译就行了。
vc是按长字节对齐的。
可用#pragrma pack()切换