读书人

一个简单有关问题函数返回值为指针应

发布时间: 2012-10-05 15:34:34 作者: rapoo

一个简单问题,函数返回值为指针应该怎么处理
写了一个二叉树,希望写一个返回值为指针的函数function1,返回的指针node指向二叉树中的某个节点。这个指针可以以后传给其他函数function2中的指针pointer = function1(), 希望达到的效果就是pointer和node 都指向那个相同节点,而且也都不能改变节点的相关值。
如果写成 node* function1(), node* &function1, 和 const node* &function1(我这样写了程序报错), 三者有什么区别,望明白人讲讲啦。

[解决办法]
typedef struct tree{
char announce[128];
struct _Announce_list *next;
}Node,*lpNode;

...

Node *function1()
{
Node *node=NULL; (或 lpNode node=NULL;)//指针定义并初始化
...
return node;//返回指针
}
或 lpNode functionl()
{
Node *node=NULL; (或 lpNode node=NULL;)//指针定义并初始化
...
return node;//返回指针
}


/*************************/
...
Node *pointer=NULL;
pointer=function1();
...
[解决办法]
结构体里面的成员自己改改,关于指针这方面的区别,一般的c语言书籍都说的很清楚了,不再多说。
[解决办法]
友情帮顶。

读书人网 >C++

热点推荐