为了账号安全,请及时绑定邮箱和手机立即绑定

这个程序为什么出错?

这个程序为什么出错?

C
皈依舞 2018-11-13 14:06:42
#include<malloc.h>#include<stdio.h>#include<stdlib.h>void init(int *p){     p=(int *)malloc(sizeof(int)); }int main(){    int *p;     init(p);     *p=4;    printf("%d",*p);    return 0; }
查看完整描述

1 回答

?
长风秋雁

TA贡献1757条经验 获得超7个赞

因为init分配的p,不是传递过去的指针,而是一个复制的p,所以main中的p没有被分配到内存,你需要传递指针的地址过去。


查看完整回答
反对 回复 2018-11-13
  • 1 回答
  • 0 关注
  • 541 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号