| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1355 人关注过本帖
标题:c语言中有关结构体和指针 的两到题 希望有人帮帮我
只看楼主 加入收藏
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
以下是引用iceberg0在2013-3-11 22:47:11的发言:

第一题需要内存对齐,按4字节对齐,char st[6]每个元素1个字节,补充2个字节,8个字节,联合共用内存,按最大分配存储空间
第二题第一句复制fgh覆盖DCD,‘\0’覆盖了E,第二句复制d覆盖了h,'\0'覆盖了前面的'\0',输出遇到'\0'结束

字节对齐可解释错了吧...
这个不关系到字节对齐...

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-03-12 08:33
a77232923
Rank: 1
等 级:新手上路
帖 子:11
专家分:9
注 册:2011-5-21
收藏
得分:0 
int 不是占2位的啊?为什么我直接复制程序后,被360当木马了?谁能解释下。
2013-03-12 08:44
iceberg0
Rank: 1
等 级:新手上路
帖 子:37
专家分:9
注 册:2012-3-2
收藏
得分:0 
回复 10楼 peach5460
因为需要内存对齐
2013-03-12 10:44
iceberg0
Rank: 1
等 级:新手上路
帖 子:37
专家分:9
注 册:2012-3-2
收藏
得分:0 
以下是引用peach5460在2013-3-12 08:33:37的发言:


字节对齐可解释错了吧...
这个不关系到字节对齐...


结构体和联合分配存储空间时都需要内存对齐的
2013-03-12 10:46
矿泉水的甜
Rank: 2
等 级:论坛游民
帖 子:34
专家分:13
注 册:2013-3-11
收藏
得分:0 
回复 10楼 peach5460
我的教材上int占2个字节啊、第一题中1、int c占两个字节。2、共用变量占用内存空间等于最长成员的长度,而不是各成员长度之和,即char st【6】为6;故结构体长度为8
2013-03-12 21:48
tongyuedidi
Rank: 2
等 级:论坛游民
帖 子:35
专家分:33
注 册:2013-2-20
收藏
得分:0 
以下是引用TonyDeng在2013-3-12 00:43:32的发言:

你们告诉我int是多少字节?先查查资料再说答案应是多少。
版主就是牛叉,咱们什么时候有版主那样得水平啊~
2013-03-12 22:02
梅可伟梅可伟
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:69
专家分:180
注 册:2013-3-11
收藏
得分:0 
main()
 {
     struct PRG/*定义一个结构体(它包含一个整型,一个共用体,而结构体的大小=sizeof(int)+sizeof(union));sizeof是用来测长度*/
     {
         int c ;
         union/*union为一个共用体(它的大小由其中最的元素确定,这里sizeof(st)=6,sizeof(int)=2,sizeof(long int)=4,故sizeof(union)=6;*/
         {
             charst[6];int i; long int j ;
         }test;
     };
     printf("%d",sizeof(struct PRG));
 }
   答案    8
 #include<string.h>
 main()
 {
     char*p1,*p2,str[50]="ADCDEFG"
 p1="abcd";
 p2="efgh"
 strcpy(str+1,p2+1);
 strcpy(str+3,p1+3);
 printf("%s",str);
 }
2013-03-15 21:58
快速回复:c语言中有关结构体和指针 的两到题 希望有人帮帮我
数据加载中...
 
   



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

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