65,211
社区成员
发帖
与我相关
我的任务
分享这里想问一下 开始函数MyFunc里的参数"char* &pReturn"是什么意思?
这个是指针的引用!一般来说,我们的指针都指向一块地方!,引用就是一个东西的不同称谓!
所以,指针的引用呢,也就是对一个指针的另一个称谓:
比较下面俩:
int i=10;
int * p =&i;
int * r = p;
int* &q=p;
那么pq其实就是一个东西、而pr是俩东西:
如果你
int b = 20;
q = &b;//这句执行完了,那么p也就指向b了
r = &b;//这句执行完了,那么p还是指向i;
----------------------------------------------------
起到什么作用呢?为什么不是"char* pReturn"? 多谢高手赐教
作用我上面说了!下面理解咋会这么用:
因为在调用的时候传过来的是NULL,这个是一个不确定值,也就是空值,那么你在函数里根本拿不到传过来的那个指针,因为没有地址!
所以,在函数里malloc后,就不能给那个NULL指针赋上去!
所以采用引用就可以!
---------------------------------------void f(char * p)
{
p = new char[128];
}
int main()
{
char * pText = 0;
f(pText);
}