Ha593 2022-05-28 11:40 采纳率: 95.2%
浏览 13
已结题

C++的局部变量和空间申请

Link* a=(Link*)malloc(sizeof(Link));
Link* a=(Link*)malloc(sizeof(Link));
这样的话前面的a会不会被后面的a所替代?

for(i=2;i<n;i++) //从第二个节点开始创建

Link* a=(Link*)malloc(sizeof(Link));
cout<<"请输入第"<<i<<"个节点的数据域的值";
cin>>a->elem;
a->next=NULL;
temp->next=a;
temp=temp->next;
}

  • 写回答

2条回答 默认 最新

  • 浪客 2022-05-28 11:54
    关注

    a的值是第二次申请的内存地址,第一次的内存并没有被销毁在temp->next中保存

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    Ha593 2022-05-28 12:34

    那它不会报错吗

    回复
    浪客 回复 Ha593 2022-05-28 13:23

    单看for里面的不会,最开头2行重名会报错,第二行开头的的类型去掉不会报错了

    回复
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 6月4日
  • 已采纳回答 5月28日
  • 创建了问题 5月28日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部