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)进行传参

相关推荐
Sammyyyyy4 分钟前
2025年,Javascript后端应该用 Bun、Node.js 还是 Deno?
开发语言·javascript·node.js
指针满天飞5 分钟前
Collections.synchronizedList是如何将List变为线程安全的
java·数据结构·list
洋曼巴-young21 分钟前
240. 搜索二维矩阵 II
数据结构·算法·矩阵
丑小鸭是白天鹅36 分钟前
嵌入式C语言学习笔记之枚举、联合体
c语言·笔记·学习
William一直在路上37 分钟前
Python数据类型转换详解:从基础到实践
开发语言·python
看到我,请让我去学习1 小时前
Qt— 布局综合项目(Splitter,Stacked,Dock)
开发语言·qt
GUET_一路向前1 小时前
【C语言防御性编程】if条件常量在前,变量在后
c语言·开发语言·if-else·防御性编程
曳渔1 小时前
UDP/TCP套接字编程简单实战指南
java·开发语言·网络·网络协议·tcp/ip·udp
楼田莉子2 小时前
C++算法题目分享:二叉搜索树相关的习题
数据结构·c++·学习·算法·leetcode·面试
三千道应用题2 小时前
WPF&C#超市管理系统(6)订单详情、顾客注册、商品销售排行查询和库存提示、LiveChat报表
开发语言·c#·wpf