将指针放在数据结构之后有什么意义?

时间:2018-05-25 02:50:34

标签: c pointers structure

我是C编程的新手,刚刚学习了结构。我的问题是在定义结构后指点是什么意思?就像在这个例子中(这是我的高级代码顺便说一句):

struct lecturer { 
    char Lecturer_ID[40];
    char Lecturer_Passport[40];
    char Lecturer_Name[40];
    char Lecturer_Password[40];
    struct lecturer *next; 
} *start, *curr;

2 个答案:

答案 0 :(得分:0)

这与主题'链接列表'有关。

想象一下,你有一些未知数量的讲师将在运行时给你。因此,每次需要处理新的讲师记录时,您必须在内存中动态分配空间。

在这种情况下,您将使用' next'用于在这些相同类型的结构化数据之间创建链接的指针。

尽管如此,您可以在本网站或youtube等中找到更多详细(和更好)的解释。只需搜索"链接列表"

答案 1 :(得分:0)

您发布的代码定义了类型struct lecturer和2个变量start以及curr,其类型指针指向struct lecturer。为清楚起见,这可以作为单独的定义编写:

struct lecturer { 
    char Lecturer_ID[40];
    char Lecturer_Passport[40];
    char Lecturer_Name[40];
    char Lecturer_Password[40];
    struct lecturer *next; 
};

struct lecturer *start;
struct lecturer *curr;

如果struct未标记且未通过typedef定义,则需要合并定义。