黑马程序员技术交流社区
标题:
指针问题
[打印本页]
作者:
丁远帅
时间:
2015-6-8 23:00
标题:
指针问题
void getHeap(int *p){
p=(int *)malloc(sizeof(int)*10);
}
int *p=NULL;
getHeap(p);
p[0]=0;
printf("%d\n",p[0]);
为什么运行会报错呢?嗨指针问题真让人头疼啊:Q
作者:
晗修
时间:
2015-6-8 23:18
这里下面的p一直是null,更加不可能写作p[0]了,
因为这样调用函数 其实还是值传递 只不过这个值是个地址
如果想用地址传递 那么函数声明需要是
void getHeap(int **p)
{
*p=(int *)malloc(sizeof(int)*10);
}
下面的调用函数应该是
getHeap(&p);
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2