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

相关推荐
Lucis__28 分钟前
再探类&对象——C++入门进阶
开发语言·c++
007php00729 分钟前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
lsx2024061 小时前
HTML 字符集
开发语言
很㗊1 小时前
C与C++---类型转换
c语言·开发语言
say_fall1 小时前
精通C语言(3. 自定义类型:联合体和枚举)
c语言·开发语言
郝学胜-神的一滴2 小时前
Effective Python 第43条:自定义容器类型为什么应该从 `collections.abc` 继承?
开发语言·python
迎風吹頭髮2 小时前
UNIX下C语言编程与实践38-UNIX 信号操作:signal 函数与信号捕获函数的编写
linux·c语言·unix
jndingxin2 小时前
c++多线程(6)------ 条件变量
开发语言·c++
共享家95272 小时前
QT-常用控件(二)
开发语言·qt
La Pulga2 小时前
【STM32】I2C通信—软件模拟
c语言·stm32·单片机·嵌入式硬件·mcu