穹星1412 发表于 2016-12-11 17:20:26

关于c语言指针的问题

CHAINLIST* add(CHAINLIST* node, int id, char* name, int score) {
        CHAINLIST* NextNode = new CHAINLIST;
        node->m_NextNode = NextNode;
        NextNode->m_HeadNode = node->m_HeadNode;
        NextNode->m_NextNode = 0;
        NextNode->m_Id = id;
        NextNode->m_Score = score;
        strcat_s(NextNode->m_Name, 32, name);
        return NextNode;
}

node->m_NextNode = NextNode;
        NextNode->m_HeadNode = node->m_HeadNode;
        NextNode->m_NextNode = 0;
这一段话是什么意思e?
求大神指点

无符号整形 发表于 2016-12-11 18:27:26

本帖最后由 无符号整形 于 2016-12-11 18:28 编辑

CHAINLIST类有哪些成员?
不然就不知道m_NextNode是个啥。

GavinR 发表于 2016-12-11 23:13:25

这个函数大体上就是为一个链表增加一个节点,节点中有5个元素,m_Id(编号),m_Score(分数),m_Name(名字),m_NextNode(指向下一个节点的指针),m_HeadNode(头结点)。参数中的node是指向原来的链表的最后一个节点的指针
node->m_NextNode = NextNode;                //将node节点的下个节点指向NextNode这个新的节点
NextNode->m_HeadNode = node->m_HeadNode;        //将原来的头结点赋值给NextNode的头结点
NextNode->m_NextNode = 0;        //NextNode的下一个节点为0(空)
页: [1]
查看完整版本: 关于c语言指针的问题