C/C++中struct结构体定义变量的3种方法及初始化

本博客整理自http://blog.csdn.net/zunfo/article/details/51494631

1.struct结构体定义

1.1.先定义结构体,然后再定义结构体变量

struct Student{
    char name[21];//学生姓名
    int age;      //学生年龄
};

注意:
1)结构体定义完成以后,计算机并不会给结构体分配内存空间
2)会在定义结构体变量后,分配存储空间
结构体变量定义格式:
struct 结构体名 结构体变量名;

struct Student stu1; //这句话表示定义一个Student结构体类型的变量,变量名称是stu1;
                     //stu1 因为是Student 类型,stu1可以存放学生的姓名、年龄
struct Student stu2,stu3,stu4; // 可以定义多个结构体变量 其中每个结构体变量都是可以存放学生的姓名、年龄

下面展示如何定义结构体指针:

struct* stu_ptr = new Student;

1.2.定义结构体的同时,定义结构体变量

格式及举例如下:

//格式:
struct 结构体名{
    //定义结构体内部变量
}结构体变量1,结构体变量2....;

//举例
struct Student{
    char name[21];//学生姓名
    int age;      //学生年龄
}stu5,stu6,stu7;//也是用Student结构体定义了三个结构体变量,名称分别为stu5,stu6,stu7

1.3.使用匿名结构体定义结构体变量

格式及举例如下:

//格式
struct {
    //定义结构体内部变量
}结构体变量1,结构体变量2....;

//举例
struct {
    char name[21];//学生姓名
    int age;      //学生年龄
}stu8,stu9;

注意:若要定义指向结构的指针则

struct Student* stu_ptr;//不要忘了关键字struct

2.struct结构体初始化常用方法

结构体定义

struct InitMember {
    int first;
    double second;
    char* third;
    float four;
};

2.1.实例化后为成员赋值方式

Student s;
s.age   = 16;
s.grade = 1;
s.name  = "Jack";

2.2.顺序初始化方式

Student s = {16, 1, "Tom"};
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值