初识C语言结构体

简介: 初识C语言结构体

一、结构体的声明

1. 结构的基础知识

结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。

为什么会有结构体呢 有了int float这些类型的变量不就够了嘛?

我们说 要描述一个复杂对象的时候 光靠简单的int 和float是不能够准确描述的

例如学生 他要有名字 要有学号等等

1.2 结构体的声明

我们规定 结构体声明要满足以下格式

struct tag

{

member - list ;

} variable - list ;

例如 我们使用结构体来描述一个学生

1.3 结构成员的类型

结构的成员可以是标量 数组 指针 甚至是其他结构体。

1.4 结构体变量的定义和初始化

定义初始化的三种方式

放置结构体中的三种类型

二、 结构体成员的访问

结构变量成员是通过点操作符来访问的。

点操作符接受两个操作数。

例如 :

2. 结构体指针访问成员的变量

和结构体变量差不多

要注意的是多了一个可以用指针变量指向结构体成员的方法

三、 结构体传参

上面的代码就能很好的说明问题

两种传参方式

传值调用和传址调用

我们这里推荐使用传址调用

目录
相关文章
|
2月前
|
存储 C语言
如何在 C 语言中实现结构体的深拷贝
在C语言中实现结构体的深拷贝,需要手动分配内存并逐个复制成员变量,确保新结构体与原结构体完全独立,避免浅拷贝导致的数据共享问题。具体方法包括使用 `malloc` 分配内存和 `memcpy` 或手动赋值。
59 10
|
2月前
|
存储 大数据 编译器
C语言:结构体对齐规则
C语言中,结构体对齐规则是指编译器为了提高数据访问效率,会根据成员变量的类型对结构体中的成员进行内存对齐。通常遵循编译器默认的对齐方式或使用特定的对齐指令来优化结构体布局,以减少内存浪费并提升性能。
|
2月前
|
编译器 C语言
共用体和结构体在 C 语言中的优先级是怎样的
在C语言中,共用体(union)和结构体(struct)的优先级相同,它们都是用户自定义的数据类型,用于组合不同类型的数据。但是,共用体中的所有成员共享同一段内存,而结构体中的成员各自占用独立的内存空间。
|
2月前
|
存储 C语言
C语言:结构体与共用体的区别
C语言中,结构体(struct)和共用体(union)都用于组合不同类型的数据,但使用方式不同。结构体为每个成员分配独立的内存空间,而共用体的所有成员共享同一段内存,节省空间但需谨慎使用。
|
2月前
|
编译器 C语言 C++
C语言结构体
C语言结构体
29 5
|
2月前
|
C语言
C语言结构体链式结构之有头单链表
文章提供了一个C语言实现的有头单链表的完整代码,包括创建链表、插入、删除和打印等基本操作。
32 1
|
2月前
|
C语言
初识C语言6——结构体
初识C语言6——结构体
19 3
|
2月前
|
存储 编译器 C语言
【C语言】探索结构体基础知识:简明概要
【C语言】探索结构体基础知识:简明概要
|
2月前
|
编译器 Linux C语言
C语言 之 结构体超详细总结
C语言 之 结构体超详细总结
22 0
|
2月前
|
存储 编译器 Linux
深入C语言:探索结构体的奥秘
深入C语言:探索结构体的奥秘