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

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

maynowei8个月前 (10-14)技术知识185

结构体数组

学习数组的时候,我们知道了使用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++的知识点之后,可以再回来看看这个知识点,就比较容易掌握。

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

相关文章

记录程序第一天挖漏洞的过程(挖漏洞需要学什么语言)

第一个漏洞复现fastjson漏洞说明:在本地这个fastjson会出现问题复现的过程生成一个java文件进行攻击注入的方式javac Exploit.java但是必须编译成.class文件才能执行p...

微软明年要停止SQL Server 2005的技术支持了

站长之家(Chinaz.com)12月28日消息据外媒消息称,微软将于明年停止为SQL Server 2005提供技术支持,即不再为其提供新的安全补丁、新功能、应用升级等服务。且表示在停止技术支持后,...

centos系统安装oracle简易客户端instantclient

一、目录1:centos 环境准备2:instant client 下载3:instant client 安装4:instant client 配置5:测试连接二、安装步骤1:zip,unzip命令安...

Navicat Premium 连接 Oracle 数据库

Navicat Premium是一个可多重连接的数据库管理工具,它可让你以单一程序同時连接到 MySQL、SQLite、Oracle 及 PostgreSQL 数据库,让管理不同类型的数据库更加方便。...

Oracle 不是有效的导出文件,标头验证失败 解决方法

第一种:网上搜索到的大多解决方法是说导出文件时使用的Oracle版本不一致问题,需要修改dmp文件的版本号。如果确定版本号确实不一样,请自行搜索一下解决方法。第二种:备份dmp文件时,备份的语句可能使...

6 张图带你彻底搞懂分布式事务 XA 模式

XA 协议是由 X/Open 组织提出的分布式事务处理规范,主要定义了事务管理器 TM 和局部资源管理器 RM 之间的接口。目前主流的数据库,比如 oracle、DB2 都是支持 XA 协议的。mys...