Chinaunix首页 | 论坛 | 博客
  • 博客访问: 265240
  • 博文数量: 52
  • 博客积分: 1287
  • 博客等级: 少尉
  • 技术积分: 581
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-01 13:53
文章分类

全部博文(52)

文章存档

2012年(48)

2011年(4)

分类: C/C++

2012-01-09 21:47:19

struct student {
    unsigned num;      /* 学号 */
    char     name[20]; /* 姓名 */
    char     ***;      /* 性别 */
    unsigned age;      /* 年龄 */
    float    score;    /* 分数 */
    char     addr[50]; /* 地址 */
};



struct date {
    int year, month, day;
    };
struct student{
    unsigned    num;
    char        name[20];
    char        ***;
    struct date birthday;
    float       score;
} stu1, stu2;

注意{}不表示复合语句,其后有分号
同一结构体的成员不能重名
不同结构体的成员可以重名
结构体成员和其他变量可以重名
结构体类型与其成员或其他变量可重名
struct test { int test; } test;
结构体类型名称是struct 结构体名,注意struct关键字不能省略

struct student stu[10], p=stu;
++p->num; /* 同++(p->num); */
p++->num; /* 同(p++)->num; */


变量的定义
定义共用体类型的同时定义变量。
先定义共用体类型,然后定义共用体变量。
如果之后不再使用此共用体类型,可定义类型时省略共用体名并同时定义变量。
union  example
{char c1;
int c2;
float c3;
}un1,un2;

变量的引用
引用共用体变量时,一定要记住某一时刻只能有某一个成员起作用。只能引用共用体变量的成员,而不能引用整个共用体变量。引用形式为:
共用体变量名.成员名
un1.c1,un2.c2,un1.c3是合法的引用。
可通过指向共用体的指针变量引用共用体变量,引用形式为:
共用体指针变量-〉成员名 或   (*共用体指针变量).成员名
语句“union un *pu;pu=&un1;”之后,(*pu).c,pu ->k是合法的引用。
说明:
给共用体变量赋值时,只能对共用体的一个成员赋值,而不能对整个共用体变量赋值。对共用体变量而言,只有最近一次被赋值的成员是有效的,其他成员无效

阅读(1431) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~