游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4893|回复: 13

问一个结构体长度的问题.帮帮忙

[复制链接]

7

主题

29

帖子

33

积分

注册会员

Rank: 2

积分
33
发表于 2009-1-19 15:38:00 | 显示全部楼层 |阅读模式
如:
struct clientData
{
int account;
char lastName[15];
char firstName[10];
double m;
};

int 的account应该为4字节,lastName应该是15字节,firstName应该是10字节,m应该是8字节...没错吧..
但sizeof(clientData) 打出来的却不是37字节......是40字节...
我想问那多出来的3字节是什么来的.................

我这个结构是写文件时候用的... [em4]

14

主题

77

帖子

83

积分

注册会员

Rank: 2

积分
83
发表于 2009-1-19 20:24:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

struct会对齐到4个字节的倍数,多出来的字节空着没用。

7

主题

29

帖子

33

积分

注册会员

Rank: 2

积分
33
 楼主| 发表于 2009-1-20 14:54:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

哦.原来是这样..........那class呢.........有没有类似的属性的?

0

主题

4

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2009-2-3 20:48:00 | 显示全部楼层

Re: 问一个结构体长度的问题.帮帮忙

struct会对齐到4个字节的倍数,多出来的字节空着没用。

//呵呵,对齐倒是没错,不过未必是按照4来对齐的哦~

3

主题

137

帖子

151

积分

注册会员

Rank: 2

积分
151
QQ
发表于 2009-2-21 22:50:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

写入文件的时候,你要规定好每个字段的长度

2

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2009-3-1 19:07:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

内存匹配问题

4

主题

81

帖子

81

积分

注册会员

Rank: 2

积分
81
发表于 2009-3-2 17:45:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

class 也是40

0

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2009-3-7 10:10:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

double最长,应该是double的整数倍

0

主题

11

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2009-3-8 13:46:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

楼主好好上网找点结构体占用字节数的资料吧,涉及一个对齐的问题,这个笔试面试太常考了。

3

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2009-3-9 07:26:00 | 显示全部楼层

Re:问一个结构体长度的问题.帮帮忙

顶二楼回答,没注意过的问题 学到知识了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-20 14:13

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表