我这到底哪错了?链表问题
下面是部分代码:
typedef struct Node
{
int data;
struct Node * pNext;
}NODE, *PNODE;
PNODE create_list(void)
{
int len, i;
int val;
PNODE pHead = (PNODE)malloc(sizeof(NODE));
if (pHead = NULL)
{
printf("\nÄÚ´æ·ÖÅäʧ°Ü!³ÌÐòÖÕÖ¹!\n");
exit(-1);
}
PNODE Ptail = pHead;
Ptail->pNext = NULL;
printf("请输入您需要产生的节点数: len = ");
scanf("%d", &len);
for (i = 0; i < len; i++)
{
PNODE Pnew = (PNODE)malloc(sizeof(NODE));
if (Pnew == NULL)
{
printf("\n分配内存失败!\n");
exit(-1);
}
printf("\n请输入第%d个节点的数值 : ", i + 1);
scanf("%d", &val);
Pnew->data = val;
Ptail->pNext = Pnew;
Pnew->pNext = NULL;
Ptail = Pnew;
}
return pHead;
}
int main(void)
{
PNODE pHead = NULL;
pHead = create_list();
return 0;
}
vc6.0真蛋疼,不报错,我还运行不下去,求指点
[解决办法]
if (pHead = NULL)
{
printf("\nÄÚ´æ·ÖÅäʧ°Ü!³ÌÐòÖÕÖ¹!\n");
exit(-1);
}
==>
f (pHead == NULL)// 是==,而不是=
{
printf("\nÄÚ´æ·ÖÅäʧ°Ü!³ÌÐòÖÕÖ¹!\n");
exit(-1);
}
[解决办法]
if (pHead = NULL){printf("\nÄÚ´æ·ÖÅäʧ°Ü!³ÌÐòÖÕÖ¹!\n");exit(-1);}==>if (pHead == NULL)// 是==,而不是={printf("\nÄÚ´æ·ÖÅäʧ°Ü!³ÌÐòÖÕÖ¹!\n");exit(-1);}