(有关 C语言\C++ 的链表):创建链表的函数 node * create()中的那个*号是什么意...

[复制链接]
查看11 | 回复3 | 2010-11-16 18:33:44 | 显示全部楼层 |阅读模式
(有关 C语言\C++ 的链表):创建链表的函数 node * create()中的那个*号是什么意思?
*号和node及create之间都要加上空格么?
还有,node * &head是什么意思?和node * head有什么不同之处?
[大侠别笑话,我只是个初中学生^_^]
那么那个create函数是不是指返回一个node型的指针?

回复

使用道具 举报

千问 | 2010-11-16 18:33:44 | 显示全部楼层
(1)node * create()中*表示这个函数的返回值是一个指针,而这个指针指向的类型就是node型。也就是说node * create()表示的是create()函数返回的值类型是指向node型数据的指针。(2)至于空格,纯粹是编程风格的问题,看你习惯怎么写,node * create()node *create()node* create()node*create()这四种形式都对,编译器(我用的是VC++6.0)都能正确识别。不过不推荐你用最后一种,因为代码可读性不高,而且可能有的编译器不能正确识别。(3)node * &head,如果我猜得没错,这应该用是C++写的,它的意思是head是一个引用,这个引用指向一
回复

使用道具 举报

千问 | 2010-11-16 18:33:44 | 显示全部楼层
* 当然是指针喽,加不加都有规定的。node * &head 中的 * &可以相互抵消,
回复

使用道具 举报

千问 | 2010-11-16 18:33:44 | 显示全部楼层
*代表指针。&代表值。
比如,有一个宝藏变量a他是整型 int,代表了宝藏的数量。
同时有个宝藏地图m,指向了这个宝藏,那他的定义就是: int * m;
表示m是"指向int类型"的一种类型。
m并不存储宝藏的数量,但存储如何能找到宝藏的线索。所以你如果打印m则打印的是寻找宝藏的地图。
&符号恰好和*符
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行