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

结构体---C语言

在C语言中,结构体(struct) 是一种用户自定义的数据类型,它允许你将多个不同类型的数据组合在一起,形成一个整体。
某些情况下,需要用多个变量描述同一个个体,如果不用结构体,你需要定义多个独立的变量,管理起来非常零散。

// 方式一:定义类型(常用) struct Student { int id; char name[50]; float score; }; // 方式二:定义类型的同时声明变量 struct { int id; char name[50]; } stu1, stu2; // 方式三:使用typedef起别名 typedef struct { int id; char name[50]; float score; } Student; // 现在Student就相当于数据类型,省去"struct"(可读性略差,需要多次声明时方便)

结构体里面也可以放结构体(结构体就像是自己创建的一种数据类型)先创建小的结构体,然后可以直接放入大的结构体中

结构体中的值的引用方法

#include <stdio.h> typedef struct { int id; char name[50]; float score; } Student; int main() { // 直接初始化 Student stu1 = {1, "linke", 99}; printf("%d ", stu1.id); // 输出1 printf("%s ", stu1.name); // 输出linke printf("%.2f\n", stu1.score); // 输出99.00 // ========== 指针引用值的多种方式 ========== // 方式1:定义指针指向结构体变量 Student *p = &stu1; printf("\n--- 指针引用方式 ---\n"); printf("通过指针访问: %d %s %.2f\n", (*p).id, (*p).name, (*p).score); // 方式2:使用箭头运算符(推荐) printf("通过箭头访问: %d %s %.2f\n", p->id, p->name, p->score); // 方式3:修改指针指向的值 p->score = 100; printf("修改后的成绩: %.2f\n", stu1.score); return 0; }
http://www.cnnetsun.cn/news/3845553.html

相关文章:

  • STM32引脚电路设计避坑指南:从电平匹配到PCB布局的实战经验
  • 从玩具到工程:M型模型车底盘调校与电子系统实战指南
  • 网站建设公司哪家好?网站建设公司怎么选
  • 如何快速掌握开源PlantUML在线编辑器:5分钟从代码到专业图表实战指南
  • 【转载】RISC-V IDE MRS2 代码编译 : 通过配置FPU提升浮点运算性能
  • G-Helper终极指南:如何免费解锁华硕笔记本完整性能控制功能
  • 基于RAG与Cherry Studio构建高精度私有AI知识库实战指南
  • 隐私计算≠数据不出域?深度拆解AI训练中11种隐式信息泄露通道(含梯度反演攻击复现实验代码)
  • 高压降压设计实战:从选型误区到Hi9214高效稳定电源方案
  • 树莓派SPI1接口配置MCP2515 CAN总线控制器完整指南
  • 从黑盒到白盒:逆向分析赛尔号通信协议的技术实践
  • 「2026 最新」VoxCPM2 整合包v4|34K Star 开源 AI 语音合成 TTS|声音克隆与多语言方言
  • 从数据库到语义大脑:基于OpenClaw.NET的本体工程实践
  • ControlNet技术解析:精准控制AI图像生成
  • 工业通信基石:Modbus TCP协议解析与实战开发指南
  • 从零搭建NFS共享存储:原理、配置与排错全指南
  • TikTok Shop上架软件:20核高并发不抢焦的云端挂机实战
  • STM32 工程模块化开发规范|头文件分层、引脚宏统一管理、高可移植项目架构实战
  • 本地化开发工具链部署指南:基于Docker Compose的Vibe Coding实践
  • 技术选型避坑指南:从概念到实践,理性评估10类开发工具
  • 从AI代码生成到工程化交付:构建可控的AI编程工作流
  • Unity URP体积云与天气系统:从原理到实战的Altos插件深度解析
  • 闲鱼MCP服务
  • TEMU采集工具:接口直取+DOM穿透,双层突破平台反爬体系
  • [开源项目]CreatorHub 本地运行的多平台内容管理面板,支持 抖音 / 小红书 / 快手 / 视频号
  • Unity独立开发者指南:免费资源整合与高效利用方法论
  • Unity二次元桌宠开发实战:从Live2D模型到桌面交互全流程
  • Linux运维实战:YUM源配置从本地到私有仓库全解析
  • 距离滔搏失去耐克,还剩5个月
  • 大差法详解:流水施工工期计算原理与Excel实操指南