lucyyuan1 2017-05-13 13:26 采纳率: 50%
浏览 1056
已采纳

c++语言的链表问题 菜鸟提问

struct record
{

book object;
record *prior;
record *next;
};
下面是截取的另一部分
record *H = new record;
record *p = H;

record *q = H;

while (inData >>p->object.name >>p->object.number >>p->object.qq>>p->object.post >>p->object.address)
{

p->next = new record;

p = p->next;

p->prior = q;

q->next = p;

q = p;

}

p->next = NULL;

//inDate是一个文件流
//object.name代表一个值 其他的也是
不理解
p->next = new record;

p = p->next;

p->prior = q;

q->next = p;

q = p;

的意思 晕死了
求大神逐步解释 只知道功能是向各个节点中输入值
在网上查了相关知识 但是越看越晕

  • 写回答

2条回答 默认 最新

  • 战在春秋 2017-05-13 21:49
    关注

    用Win7自带的画图制作了示意图,希望有帮助。

    总的来说,这是链表结构的应用,可以把链表理解成一串佛珠。

    1 这是最开始的状态:

    图片说明

    2

     p->next = new record;  之后
    

    图片说明

    3

     p = p->next;  之后 
    

    图片说明

    4

     p->prior = q;
    
    q->next = p;  这两行之后图没有变化,但保证第三步的图成立
    

    5

     q = p; 之后
    

    图片说明

    循环结束之前,重复以上步骤 ,在后面再串一个结点,反复如此,直到循环结束。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 Stata链式中介效应代码修改
  • ¥15 latex投稿显示click download
  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 添加组件无法加载页面,某块加载卡住
  • ¥15 网络科学导论,网络控制
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错