首页 > 代码库 > C++ 结构体(三)

C++ 结构体(三)

结构体变量的定义的三种方式

第一种方法,先定义结构体类型,再定义结构体变量

一般形式:

struct   stu_info
{       
    char  name[12];      
    int num;                 
    char id_card[19];  
    int g_score;           
    int x_score;            
    int s_score;           
}; 

定义结构体变量stu1,stu2

struct  stu_info    stu1, stu2;


第二种方法,定义结构体类型的同时定义结构体变量

一般形式:

struct   stu_info
{       
    char  name[12];      /*学生姓名*/
    int num;                 /*学生学号*/
    char id_card[19];  /*身份证号码*/                 
    int m_score;           /*数学成绩*/
    int c_score;            /*语文成绩*/
    int h_score;           /*历史成绩*/
}stu1,stu2; 


第三种方法,直接定义结构体变量

struct 
{       
    char  name[12];      /*学生姓名*/
    int num;                 /*学生学号*/
    char id_card[19];  /*身份证号码*/
    int m_score;           /*数学成绩*/
    int c_score;            /*语文成绩*/
    int h_score;           /*历史成绩*/
}stu1,stu2; 

用无名结构体直接定义变量时,只能定义一次,不建议用这种方法。


结构体变量的存储结构:

1.结构体变量的存储结构:一般情况下,逐个成员连续存放,所占空间为各成员所占空间之和。

2.一般使用 sizeof 计算结构体类型或结构体变量需要分配空间的大小,而不必考虑具体的细节。

C++ 结构体(三)