(具体看附上的代码,谢谢大神)为什么pRootNode指针得不到数据,明明调用函数传输函数参数的是地址,在函数内部开辟了地址,为什么还是传不出来?
为什么pRootNode指针得不到数据,明明调用函数传输函数参数的是地址,在函数内部开辟了地址,为什么还是传不出来?如果把函数void TestFunction(Node *pNode)修改成void TestFunction(Node *&pNode)就没问题了,关键是搞不通,问什么传入的是地址还是不能修改呢?求大神指点#include "stdafx.h"
#include <stdlib.H>
typedef struct Node
{
int pData;
Node *pNext;
Node *pPrevious;
Node *pParent;
}Node;
void TestFunction(Node *pNode);
int main(int argc, char* argv[])
{
Node *pRootNode=NULL;
TestFunction(pRootNode);
return 0;
}
void TestFunction(Node *pNode)
{
pNode=(Node*)malloc(sizeof(Node));
pNode->pData=1;
pNode->pParent=NULL;
pNode->pNext=NULL;
pNode->pPrevious=NULL;
}