回 帖 发 新 帖 刷新版面

主题:有点问题

typedef struct node
{
char data;//存储进栈的括号
struct node *next;//指向后继结点
}linkstack;//linkstack为链栈的名称

int Initlinkstack(linkstack *&head);//对带有头结点的链栈进行初始化


在head前  *&  两个字符什么意思  求解释

回复列表 (共5个回复)

沙发

C++语言的“引用”

板凳

也就是说你可以在函数内修改这个指针的指向。

3 楼

*是间接访问&head,我觉得你最好去看看《C和指针》这本书,很好,我现在正在看

4 楼

C++的引用楼主应该知道吧,linkstack* &head 意思就是head是一个linkstack*类型的引用,这种操蛋的声明很少人用了,一般都是直接声明int Initlinkstack(linkstack **head);

5 楼

&是取址运算符,*是取值运算符,先去head的地址,然后用*根据取head指针的地址去取值

我来回复

您尚未登录,请登录后再回复。点此登录或注册