当前位置: 首页 > news >正文

【C语言】结构体(一)

一,是什么

结构体就是一些值的集合,这些值称为成员变量

结构体的每个成员可以是不同类型的变量。说到集合,数组也是集合,但是不同的是数组只能是相同类型元素的集合。

二,结构体的声明

struct tag
{
  member1;
  member2;
} variable-list;

▶ struct是结构体关键字
▶ tag是结构体的名字,是自定义的
▶ struct tag就是结构体类型
▶ {  }里面放的是成员列表
▶ variable-list是变量

member1 , member2 是结构体成员


三,结构体的定义

1,结构体也是一种数据类型,它由程序员自己定义,可以包含多个其他类型的数据。
2,像 int、float、char 等是由C语言本身提供的数据类型,不能再进行分拆,我们称之为基本数据类型。

3,而结构体可以包含多个基本类型的数据,也可以包含其他的结构体,我们将它称为复杂数据类型或构造数据类型。

结构体的基础结构:
A.先定义结构体类型,再定义结构体变量

d3abcacf173143bd8eb7d1ce7bcfcc54.png

B.定义结构体类型的同时定义结构体变量

958bd9f67f0641ada647d6a804cb6059.png

 

C.直接定义结构体变量

92de7b21930b4a1ebe26ed447203bfde.png
 

 

注:

▶结构体中结构体的定义是不分配空间

▶结构体中各成员的定义不分配空间

▶结构体中变量的定义分配空间

结构体变量的声明需要在主函数之上或者主函数中声明,如果在主函数之下则会报错

 

 

http://www.lryc.cn/news/495927.html

相关文章:

  • C++《set与map》
  • 深度学习-52-AI应用实战之基于Yolo8的目标检测自动标注
  • 【Elasticsearch】05-DSL查询
  • qml项目创建的区别
  • .NET8/.NETCore 依赖注入:自动注入项目中所有接口和自定义类
  • Flutter:city_pickers省市区三级联动
  • Kafka-Connect自带示例
  • Hbase应用案例 随机号码生成
  • 论文阅读——量子退火Experimental signature of programmable quantum annealing
  • (长期更新)《零基础入门 ArcGIS(ArcMap) 》实验二----网络分析(超超超详细!!!)
  • go语言 Pool实现资源池管理数据库连接资源或其他常用需要共享的资源
  • mysql一个事务最少几次IO操作
  • 运输层总结
  • 【嵌套查询】.NET开源 ORM 框架 SqlSugar 系列
  • React 前端框架1
  • 【真正离线安装】Adobe Flash Player 32.0.0.156 插件离线安装包下载(无需联网安装)
  • 数据采集时,不同地区的动态IP数据质量有什么差异?
  • 【Python爬虫五十个小案例】爬取猫眼电影Top100
  • 等保测评和 ISO27001 都是信息保护,区别是什么?
  • Linux系统编程之进程创建
  • JAVA-IO
  • 动态系统特征分析:特征向量、特征值、频率与阻尼比、参与因子计算方法
  • 乐鑫发布 esp-iot-solution v2.0 版本
  • 动态代理如何加强安全性
  • Flutter 之 InheritedWidget
  • AI 助力开发新篇章:云开发 Copilot 深度体验与技术解析
  • MyBatis-Plus介绍及基本使用
  • SpringBoot 整合 Avro 与 Kafka
  • 支持JT1078和GB28181的流媒体服务器-LKM启动配置文件参数说明
  • 什么是隐式类型转换?隐式类型转换可能带来哪些问题? 显式类型转换(如强制类型转换)有哪些风险?