C语言 结构体基础知识

结构体的定义:结构体是一种构造数据类型
用途:把不 同类型的数据组合成一个整体-------自定义数据类型
1、结构体类型定义

struct [结构体名]
{
类型标识符 成员名;
类型标识符 成员名;
…………….
};
说明:1.结构名可以省略(用无名结构体直接定义变量只能一次)
2.成员类型可以是基本型或构造型
3.结构体类型定义描述结构的组织形式,不分配内存
例:

	           struct   student
	        {       
                 int num;
                 char  name[20];
                 char sex;
                 int age;
                 float score;
                 char addr[30];
	        }; 

在这里插入图片描述
2、结构体变量的定义
(1)先定义结构体类型,再定义结构体变量

struct 结构体名
{
类型标识符 成员名;
类型标识符 成员名;
…………….
};
struct 结构体名 变量名表列

例    struct   student
        {       int num;
                 char  name[20];
                 char sex;
                 int age;
                 float score;
                 char addr[30];
        }; 
        struct student   stu1,stu2; 
      
例   #define   STUDENT    struct  student
        {       int num;
                 char  name[20];
                 char sex;
                 int age;
                 float score;
                 char addr[30];
        }; 
        STUDENT   stu1,stu2;                 

(2)定义结构体类型的同时定义结构体变量
struct 结构体名
{
类型标识符 成员名;
类型标识符 成员名;
…………….
}变量名表列;

例    struct   student
        {       int num;
                 char  name[20];
                 char sex;
                 int age;
                 float score;
                 char addr[30];
        }stu1,stu2; 

struct
{
类型标识符 成员名;
类型标识符 成员名;
…………….
}变量名表列;

  struct 
        {       int num;
                 char  name[20];
                 char sex;
                 int age;
                 float score;
                 char addr[30];
        }stu1,stu2; 

说明:
结构体类型与结构体变量概念不同
类型:不分配内存; 变量:分配内存
类型:不能赋值、存取、运算; 变量:可以
结构体可嵌套
结构体成员名与程序中变量名可相同,不会混淆
结构体类型及变量的作用域与生存期
在这里插入图片描述
在这里插入图片描述
3、结构体变量的引用
引用规则
结构体变量不能整体引用,只能引用变量成员
引用方式: 结构体变量名.成员名

成员(分量)运算符
优先级: 1
结合性:从左向右
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
可以将一个结构体变量赋值给另一个结构体变量
结构体嵌套时逐级引用
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

隔壁de小刘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值