繁体   English   中英

带有指向C中结构的指针的链表节点

[英]Linked list node with pointer to struct in C

我是 C 编程的新手。 熟悉结构指针和 linekd 列表。 我遇到了带有指向结构的指针的链表节点的概念。

typedef struct
{
   string name, surname;
   int matriculation_num;
}Student_typedef;

typedef struct
{
   Tstudent* student;
   Node_typedef* next;
} Node_typedef;

谁能告诉我 Node_typedef 的目的究竟是什么。 这些实现在哪里有用? 非常感谢任何有用的链接。

两个显示的结构类型定义将存储的数据与存储机制分开。

您可以看到Student_typedef只有与要存储的信息相关的成员,但没有与存储相关的成员。 目标是拥有一种可以存储大量这种数据结构的机制。

另一方面, Node_typedef不包含任何要存储的信息,只有一个指向完整数据的指针。 如果要存储的信息的结构发生变化(尽管仍由相同的类型标识符Student_typedef ),则无需更改有关此存储机制的任何内容。

或者从不同的角度来描述它,两个开发学生数据库的开发人员只需同意每个学生所需的所有信息都在Student_typedef 然后,一个开发人员可以处理编程功能以输入或编辑给定的结构(基于指向存储提供的结构的指针),而另一个开发人员可以处理存储方面,例如添加新结构以填充、删除、优化内存、等等。

这种接口定义和代码部分抽象的方法对于有效处理大型项目是必要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM