DarkmoonYZW 2019-11-27 16:12 采纳率: 100%
浏览 397
已采纳

为什么函数中的L*new报错,后面的p->next=new也不行?

图片说明

图片说明
为什么VS2019上报错?

#include"1.h"
typedef struct slist

{
int id;
struct slist* next;
}L;
//创建一个节点

L* create_node(int data)
{
//给每个节点分配结构体一样的空间大小
L* p = (L*)malloc(sizeof(L));
if (NULL == p)
{
printf("malloc error!\n");
return NULL;
}
//由于结构体在未初始化的时候一样是脏数据,所以要清
memset(p, 0, sizeof(L));
//初始化第一个节点
p->id = data;
//将节点的后继指针设置为NULL
p->next = NULL;

}

//链表的尾插
void tail_insert(L* pH, L*new)
{

//获取当前的位置 
L* p = pH;
//如果当前位置的下一个节点不为空 
while (NULL != p->next)

{
    //移动到下一个节点 
    p = p->next;
}
//如果跳出以上循环,所以已经到了NULL的这个位置
//此时直接把新插入的节点赋值给NULL这个位置 
p->next =new;

}

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-11-27 17:04
    关注

    new是C++关键字,换一个名字。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器