标题:请高手指教,关于数据对齐以及一些小问题 先谢过
取消只看楼主
caoyuyong
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-8-16
结帖率:100%
已结贴  问题点数:20 回复次数:4 
请高手指教,关于数据对齐以及一些小问题 先谢过
有几个问题,我想了很久,依然有一些搞不清,觉得还是很重要,所以特来讨教下:
第一个,关于数据对齐的。假设,所用电脑是64位,。那么以下的几个结点在没有赋值时
         typedef struct Node{ double a; char b; int d; char c; }node;   
        typedef strcut Stu{ double a; int d; char b; char c;}stu;
        typedef struct List{ double a; int b; int c; short e;long double f; char g;char k;}list;
       那么sizeof(node),sizeof(stu),sizeof(list),他们的值各是多少啊?  list中的long double f 被分配了几个字节呢?

   另外,按字节对齐和按数据对齐,有点搞不清....请指点下,,,谢谢

第二个,假设: int a=5; int b=6;   int c= a>b||a++&&a-(--b)||(b%=5);
          那么c,a,b最后的值时多少啊    这里有点搞不清,  ||和&&的优先级问题,他们是一样的优先级别吧??


可能,问的有点没有水准,见笑了。。。。。真不好意思
搜索更多相关主题的帖子: long double 
2012-08-30 11:07
caoyuyong
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-8-16
得分:0 
问题是,我们常常会用到sizeof语句,这个值,我们应该事先能分析道,我是想知道,该如何通过sizeof来分析和计算一个结点的大小
2012-08-30 11:57
caoyuyong
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-8-16
得分:0 
怎么没人理啊?  我很诚恳的啊
虽然问的可能没有水准
2012-08-30 18:19
caoyuyong
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-8-16
得分:0 
有时候,给我一个结构,我自己算的和SIZEOF算的大小不一样,这让我很纠结,所以,我.....很纠结
2012-08-30 18:20
caoyuyong
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-8-16
得分:0 
谢谢6楼,和8楼的解说,我现在确定了,,原本只理解了一部分,那这一部分给遗忘了:这样总共的大小是17,但是由于整个结构体还要按字节对齐,结构体按字节对齐是按结构体成员中的占最大是8,所以有效对齐是4 !!!!!!!!
  所以,我说嘛,怎么自己就算不对了呢,,,,
 貌似,他们每个成员的首地址要被它本身的长度整除才可以吧?   
谢谢了
2012-08-31 11:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-380338-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.222509 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved