【发布时间】:2018-12-30 14:14:48
【问题描述】:
这是学校的作业。我有一个结构 Employee,看起来像这样
typedef struct TEmployee
{
struct TEmployee * m_Next;
struct TEmployee * m_Bak;
char * m_Name;
} TEMPLOYEE;
还有一个添加新员工的函数,目前看起来像这样,但我不确定如何让 m_Bak 指向前一个员工
TEMPLOYEE * newEmployee(const char * name, TEMPLOYEE * next)
{
TEMPLOYEE* head = NULL;
head = malloc(sizeof(TEMPLOYEE));
if(head==NULL)
{
return NULL;
}
head -> m_Name = strdup(name);
head -> m_Next = next;
head -> m_Bak = NULL;
return head;
}
感谢任何帮助。
【问题讨论】:
-
"不确定如何让 m_Bak 指向前一个员工" --> 如果
next不是NULL,next.m_Bak指向前一个员工。为了得到一个好的答案,我们需要看看newEmployee()是如何被调用的。
标签: c pointers struct linked-list