C语言初阶(11)

1.结构体定义

结构体就是一群数据类型的集合体。这些数据类型被称为成员变量。结构的成员可以是标量、数组、指针,甚至是其他结构体。

2.结构体的声明和结构体变量命名与初始化

结构体声明由以下结构组成

cs 复制代码
struct stu
{
	char name[12];
	int age;
};

结构体命名有两种形式

cs 复制代码
struct stu
{
	char name[12];
	int age;
}stu1,stu2;
cs 复制代码
struct stu
{
	char name[12];
	int age;
};
int main()
{
	struct stu st;
	return 0;
}

结构体变量初始化

cs 复制代码
struct stu
{
	char name[12];
	int age;
};
int main()
{
	struct stu st = { "anan",12 };
	
	return 0;
}

结构体定义包含另一个结构体,在初始化时要使用这样形式,大括号套大括号的形式。

cs 复制代码
struct peo
{

	 int high;
};
struct stu
{
	char name[12];
	int age;
	struct peo pe;
};
int main()
{
	struct stu st = { {181},"anan",12 };
	
	return 0;
}

结构体int类型不能写成数组类型

3.结构体的成员访问和结构体传参

结构体成员访问时有两种形式

结构体传参时多使用地址进行传参,防止内存空间的浪费

传参时使用test(&st)进行传参

相关推荐
喜欢吃燃面3 小时前
Linux:环境变量
linux·开发语言·学习
爱编码的小八嘎3 小时前
C语言对话-10.关于操纵器的对话
c语言
徐徐同学3 小时前
cpolar为IT-Tools 解锁公网访问,远程开发再也不卡壳
java·开发语言·分布式
LawrenceLan3 小时前
Flutter 零基础入门(二十六):StatefulWidget 与状态更新 setState
开发语言·前端·flutter·dart
m0_748229993 小时前
Laravel8.X核心功能全解析
开发语言·数据库·php
qq_192779874 小时前
C++模块化编程指南
开发语言·c++·算法
代码村新手4 小时前
C++-String
开发语言·c++
qq_401700414 小时前
Qt 中文乱码的根源:QString::fromLocal8Bit 和 fromUtf8 区别在哪?
开发语言·qt
EndingCoder5 小时前
案例研究:从 JavaScript 迁移到 TypeScript
开发语言·前端·javascript·性能优化·typescript