boytomato

c++

 

2006年9月22日

呵呵, struct 和union 的区别....

struct  student
{ char  name[ 10 ];
long  sno;
char  sex;
float  score[ 4 ];
}
 ;


main()
{ struct  student a[ 1 ];

  
long   sno ;
  
char  name[ 10 ];
  
float  score[ 4 ];
  
char  sex ;

printf(
" \n\n%d\n " , sizeof (a));
printf(
" %d\n " , sizeof (score) + sizeof (sex) + sizeof (name) + sizeof (sno));

}
输出的都是 31
 

typedef union student
{char name[10];
long sno;
char sex;
float score[4];
}
 Stu  ;


main()
{ Stu a[1];

  
long  sno ;
  
char name[10];
  
float score[4];
  
char sex ;

printf(
"\n\n%d\n",sizeof(a));
printf(
"%d\n",sizeof(score)+sizeof(sex)+sizeof(name)+sizeof(sno));

}

输出的为16,31,

结构和联合有下列区别:
1. 结构和联合都是由多个不同的数据类型成员组成, 但在任何同一时刻, 联合转只存放了一个被选中的成员, 而结构的所有成员都存在。
2. 对于联合的不同成员赋值, 将会对其它成员重写, 原来成员的值就不存在了, 而对于结构的不同成员赋值是互不影响的。

posted @ 2006-09-22 11:42 boytomato 阅读(401) | 评论 (0)编辑 收藏

指针使用1 ....

main()
 
int   * p,a[ 10 ],i,j;
       p
= a;

    
for  (i = 0 ;i < 10 ;i ++ )
    
{   * p ++= i * 2 ;
    }

    p
= a;  // 指针复位

    
for  ( j = 0 ;j < 10 ;j ++ )
    
{ printf( " %d\n " , * p ++ );
    }

    scanf(
" ddd " );
}

posted @ 2006-09-22 08:53 boytomato 阅读(236) | 评论 (0)编辑 收藏

2006年8月28日

呵,安个家

          计划开始学习 vc++

posted @ 2006-08-28 12:52 boytomato 阅读(261) | 评论 (0)编辑 收藏

仅列出标题  

导航

统计

常用链接

留言簿(1)

随笔档案

c++

搜索

最新评论

阅读排行榜

评论排行榜