67.结构体变量

一.什么是结构体变量

结构体变量是多种不同的类型变量的组合。

结构体可以用在哪些场景当中呢?

比如我们想定义一个变量来存放图书书名,图书作者,图书售价,出版日期等信息,大家脑海里面想到的是不是是数组呢。但是数组存放的是相同类型的多个元素,很显然,这里的图书书名,图书作者,图书售价,出版日期类型是不同的。图书书名,图书作者需要使用char类型,而图书售价,出版日期需要使用int类型。

这时候就可以使用结构体。

二.结构体的声明

注意:结构体的声明只是一个创建了一个描述,并不会在内存中分配空间

语法格式:

struct 结构体名称

{

    结构体成员1;

    结构体成员2;

    ...

};

举例:

struct book

{

    char title[128];

    char  author[128];

    float price;

    unsigned int date;

};

三.定义结构体类型变量

注意:定义结构体类型变量会在内存中分配空间

语法格式:struct 结构体的名称 结构体变量名

举例:

写法1:

struct book mybook

写法2:

struct book

{

    char title[128];

    char  author[128];

    float price;

    unsigned int date;

}mybook; //这种写法是全局变量

四.初始化结构体变量

初始化方法1:

struct book mybook = {
       "mybook",
       "me",
       20.9,
       20200101,
 };

初始化方法2:

struct book mybook = {
       .title = "mybook",
       .price = 29,
};

五.访问结构体变量中的成员

使用.运算符访问

举例:

book.date

六.综合例子

#include <stdio.h>


struct book
{
    char title[128];
    char author[128];
    float price;
    unsigned int date;
};

int main(void)
{

    //struct book mybook;
    /*
    struct book mybook = {
        "mybook",
        "me",
        20.9,
        20200101,
    };
    */
    struct book mybook = {
        .title = "mybook",
        .price = 29,
    };
    mybook.price = 22.5;
    
    printf("mybook.price  is %.1f\n",mybook.price);
    printf("mybook.title  is %s\n",mybook.title);

    return 0;
 
}

七.视频教程

67.结构体变量_哔哩哔哩_bilibili

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值