千翎丿 2018-03-04 06:57 采纳率: 20%
浏览 7524
已结题

链表的定义中,struct Node和Node的区别(在线等,急!!)

typedef struct Node{...}LNode;
以上定义中,是不是可以去掉第一个Node?然后依然可以得到新类型LNode

typedef struct Node* Linklist;
以上定义中,既然已经自定义了LNode类型,为什么不这样写:typedef LNode* Linklist;
而还要用 struct Node呢?

  • 写回答

7条回答 默认 最新

  • qq_39632570 2018-03-04 08:11
    关注

    struct //是C中的结构体的关键词。
    如: stuct node{

    /* node 相当于结构体的类型,关键是!
    其实在C中stuct node 才相当于一个数据类型,如int ,所以在才会给初学者的带来困难,如在定一个变量时,要用 struct node xxx,而不是 node xxx 这就是关键。
    */
    int a;
    .....
    } a; //

    a是结构体的变量

    而 typedef // 是自定义数据类型。
    如:typedef int zengshu // 把一个数据类型用一个直观的数据类型名代替,增加程序的可移植性。
    而且 typedef struct node {

    }A;
    则是把 struct node 看做一个数据类型(见关键处),不同的是这个结构体类型的定义也放在后面。 而A则是那个直观的数据类型名,引用的时候更加方便。

    评论

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制