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

C语言——结构体

目录

一、结构体的基本概念

1.1 结构体的定义

1.2 结构体变量的声明

二、结构体成员的访问

三、结构体数组

四、结构体指针


一、结构体的基本概念

在 C 语言中,结构体(struct)是一种自定义数据类型,它允许将不同类型的数据项组合在一起,形成一个逻辑上的整体。结构体在处理复杂数据结构时非常有用,比如表示一个学生的信息、一个日期或者一个图形对象等。

1.1 结构体的定义

结构体的定义使用struct关键字,其基本语法如下:

struct 结构体名 {数据类型 成员1;数据类型 成员2;// 更多成员...
};

例如,定义一个表示学生的结构体:

struct Student {char name[50];int age;float score;
};

 

1.2 结构体变量的声明

定义好结构体后,可以声明该结构体类型的变量。有两种常见的方式:
方式一:先定义结构体,再声明变量

struct Student stu1, stu2;

方式二:在定义结构体的同时声明变量

struct Student {char name[50];int age;float score;
} stu1, stu2;

 

二、结构体成员的访问 

结构体成员通过点运算符(.)来访问。例如:

#include <stdio.h>struct Student 
{char name[50];int age;float score;
};int main() 
{struct Student stu1;// 初始化结构体成员strcpy(stu1.name, "张三");stu1.age = 20;stu1.score = 85.5;// 访问并输出结构体成员printf("姓名: %s\n", stu1.name);printf("年龄: %d\n", stu1.age);printf("分数: %.1f\n", stu1.score);return 0;
}

注意:
   1.结构体使用时分为两步: 
     step1.先定义出结构体类型 
     step2.通过类型定义出变量 
   2.相同类型的结构体变量之间可以相互赋值 
   3.结构体类型的形参一般设计为指针类型,原因是指针类型传参时大小固定;如果是结构体类型变量,变量的大小取决于结构体类型大小

三、结构体数组

结构体数组是由多个相同结构体类型的元素组成的数组。例如,定义一个包含多个学生信息的结构体数组:

struct Student students[3] = {{"张三", 20, 85.5},{"李四", 21, 90.0},{"王五", 19, 78.5}};

四、结构体指针

结构体指针是指向结构体变量的指针。

struct Student *p = &stu;

通过结构体指针访问成员有两种方式:
方式一:先解引用指针,再用点运算符

(*指针变量名).成员名
(*p).name

方式二:使用箭头运算符(->

指针变量名->成员名
p -> name

相关文章:

  • FPGA基础 -- BRAM简介
  • 数据处理考核培训-报表考试要求
  • 利用SMBMAP、SMBCLIENT和NETEXEC进行高效SMB渗透测试
  • 【Akshare】高效下载股票和ETF数据
  • DECOUPLING REPRESENTATION AND CLASSIFIER FOR LONG-TAILED RECOGNITION
  • 远程桌面控制 BilldDesk v0.30.0支持网页版
  • FPGA基础 -- Verilog 门级建模
  • MIT 6.S081 2020 Lab9 File Systems 个人全流程
  • 【Java并发】volatile 与 synchronized 关键字
  • MySQL的事务隔离级别、锁机制、MVCC的原理
  • 【pytest进阶】pytest详解及进阶使用
  • 开源 Arkts 鸿蒙应用 开发(一)工程文件分析
  • QT中使用QVTKOpenGLNativeWidget显示三维图形(VTK9.x以上版本)
  • Python FastAPI详解
  • CentOS7 安装最新版 Docker
  • LLM大模型系列(十):深度解析 Prefill-Decode 分离式部署架构
  • 代码随想录打卡第三十天 动态规划
  • java集合(十七) ---- TreeSet 类
  • win10系统外接触控显示屏触摸校准
  • mysql 学习
  • 企业网站建设的基本原则有哪些?/免费外网加速器
  • wordpress点击网页效果/排名优化软件点击
  • 阿里云虚拟主机如何安装wordpress/佛山百度提升优化
  • 昆山市做网站/网站seo关键词设置
  • 事业单位网站建设方案书/站长之家素材
  • 网站制作知名公司/关键词推广操作