有以下两段代码,为什么第一段无法运行显示未初始化 L
疑问:
1.我使用了初始化函数,可是为什么显示未初始化?
2.该怎么修改?
3.从代码上理解我觉得这两个实现的功能都一样,为什么第一段初始化失败了?
#include <iostream>
using namespace std;
struct Node
{
int data;
struct Node* next;
};
typedef struct Node LNode;
void InitLinkList(LNode* l)
{
l = new LNode;
l->next = NULL;
}
int main()
{
Node* L;
InitLinkList(L);
system("pause");
return 0;
}
#include <iostream>
using namespace std;
struct node
{
int data;
struct node* next;
};
typedef struct node lnode;
int main()
{
node* L;
L = new node;
L->next = NULL;
system("pause");
return 0;
}