我想创建一个双向链表。在节点中,此数据必须位于:姓名,姓氏,部门,等级。 我的结构是
typedef struct DATA{
long Number;
char name[30],lastname[30],department[50];
int grade;
}DATA;
struct DATA* data;
typedef struct node{
DATA data;
struct node* next;
struct node* prev;
}node;
struct node* start=NULL;
我想与
联系struct node* CreateNode(int number, char name1[30], char lastname1[30], char department1[50])
{
struct node* newNode = (struct node*)malloc(sizeof(struct node));
data->Number=number;
data->name[30]=name1[30];
data->lastname[30]=lastname1[30];
data->department[50]=department1[50];
newNode->next=NULL;
newNode->prev=NULL;
return newNode;
}
void SonaEkleme(int number, char name1[30], char lastname1[30], char department1[50])
{
struct node* addData = CreateNode(number, name1, lastname1, department1);
if (start==NULL)
{
start=addData;
}
else
{
struct node* temp=start;
while(temp->next!=NULL)
{
temp=temp->next;
}
addData->prev=temp;
temp->next=addData;
}
}
但是无法添加新节点。如何在双向链表节点中再添加一个数据?
答案 0 :(得分:0)
我认为您正在将temp的内容与temp本身混合在一起!
*temp=temp->next;