专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

线性表中的linklist到底是什么类型的_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/9 3:21:18       共计:3561 浏览

线性表中的linklist到底是什么类型的?

#defineDATATYPE2char typedefstructnode {DATATYPE2data; structnode*next; }LINKLIST; 这是用C语言描述单链表结构.第二行中typedefstructnode到底是用typedef为一个结构体取一个新的类型名,还是structnode就是一个类型名,现在是用typedef定义一个新的类型名LINKLIST来代替已有的类型名structnode。(LINKLIST是定义的一个变量还是一类型名呢) 还有一个疑问就是第二行中typedefstructnode即然是定义结点类型,那么直接写成structnode不就行了吗,为什么前面还要加一个typedef呢,这样的意图是什么呢?他是要为这个类型重新取一个新的类型名吗?如果是的话,那后面那个LINKLIST就是新的类型名,而不是一个变量了。对吗? 我刚开始学的时候也是和你一样迷惑不解,现在有点理解了,我说说我的想法吧: typedefstructnode//这里node是结构体的名字 LINKLIST应该是新的类型名,在以后的程序中如果你想定义一个node类型的结构体,那么你就可以这样定义: LINKLISTppt;//ppt就是上面结构体的一个变量了 LINKLIST*ppt//ppt就是指向上面结构体的一个指针变量了 至于为什么用typedefstructnode而不用structnode呢,这是因为在C语言中以后你要定义一个结构体变量时,如果你用前者,可以用上面LINKLISTppt;如果用后者,就不行了,用后者的话,你定义一个结构体变量的话要用structnodeppt; 但在C++中,好像两者都行,你可以编程试试 Linkp就是structstructnode* 即Link==LINKLIST* 所有有typedef的地方,都先把typedef去掉。 如果没有typedef,很明显LINKLIST是一个structnode的变量,Link是structnode*,nbsp是structnode&的变量 然后,加上typedef。所有的LINKLIST,Link,nbsp都从变量升级成一个类型。 即LINKLIST是structnode类型,Link是structnode*类型,nbsp是structnode&类型。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:如何辨别真假彩票_PHP基础 | ·下一条:如何调小游戏窗口_java

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有