当前位置:首页 > 技术知识 > 正文内容

C语言结构体,如何定义结构体数组?linux C第62讲

maynowei5个月前 (10-14)技术知识118

结构体数组

学习数组的时候,我们知道了使用C语言提供的基础数据类型来定义数组,例如:

char array[100];

int array[100];

此时,我们可以使用char, int基本数据类型来定义数组。那么,结构体类型作为我们自己定义的数据类型,也可以用来定义数组;使用结构体数据类型来定义数组与使用基本数据类型定义数组一样。例如,我们定义如下的结构体类型:

//定义结构体类型

struct reader

{

//定义结构体的成员;

char name[32];

int age;

int number;

};

此时,我们定义了struct reader结构体类型,那么,我们可以使用它来定义数组如下:

struct reader array[6]; //定义结构体数组,数组名是array,数组长度是6个元素;

此时,我们定义了array[]数组,数组的元素是struct reader类型。程序的测试例子如下:

程序运行结果如下:

可以看到,我们定义了r[3]数组,数组元素的类型是struct reader结构体类型,数组元素存放一个struct reader结构体变量。所以,访问数组元素中的成员时,如同访问结构体变量的成员一样。

总结

本章节我们学习了C语言的结构体知识,这是一个非常重要的知识点,需要读者重点掌握。读者可以参考文档的练习例子,自己手动敲写代码,多加运行测试,总结出对结构体类型的使用方式。

在文章的末尾,我们给出了C语言进行面向对象编程的例子。穿插讲解了面向对象编程的知识。这个知识点有些难度,初学者可以调过,后续学习了C++的知识点之后,可以再回来看看这个知识点,就比较容易掌握。

读者要仔细分析,掌握好每一个知识点,然后,自己总结出对该知识点的理解。自己总结出来的知识,理解才深刻,才是自己掌握的知识。

相关文章

Axure操刀微信H5页面之《人际沟通风格测试》的制作过程

来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。在之前的文章中我就讲过用Axure制作H5页面(再次声明Axure输出的html文件可能并非基于html5),在H5制...

机器人需求驱动导航新SOTA,成功率提升15%!浙大&vivo联手打造

CogDDN团队 投稿量子位|公众号QbitAI让机器人像人一样边看边理解,来自浙江大学和vivo人工智能实验室的研究团队带来了新进展。正如视频所展示的,机器人在复杂的室内环境中不仅能自主探索,还具备...

高考一词多义考点! 30个高频词汇,完形填空再也不怕啦

1. address·/a'dres/ v.处理(问题)We must address the issue of climate change.·/'aedres/ n.地址Pleas...

Shopee新手指南:Shopee卖家中心用户界面介绍

1.Shopee各站点前台网页链接:2.Shopee各站点后台网页链接3.Shopee APP下载:安卓版下载链接:https://pan.baidu.com/s/1eSp8M1k#list/path...

go语言并发原语RWMutex实现原理及闭坑指南

1.RWMutex常用方法Lock/UnlockRLock/RUnlockRLocker 为读操作返回一个Locker接 口的对象2. RWMutex使用方法 func main() { var c...

大量类加载器创建导致诡异FullGC(类的加载器有什么用)

“ 由 GC 问题带你全面了解 JDK8 Metaspace”01—现象最近接手了一个同事的项目,某一天接口的响应耗时突然增加了很多,由几十ms 增加到了几十秒。首先查看机器上的日志,有调用第三方接口...