指针问题

xiaolomg xiaolomg 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
今天在看 二叉查找树的delete节点时候,看到一段代码:
不过可以简化成下面:
#include <iostream>

struct TreeNode{
TreeNode(int aVal){
value = aVal;
pLeft = NULL;
pRight = NULL;
}
int value;
TreeNode* pLeft;
TreeNode* pRight;
};

int main(){
TreeNode* node1 = new TreeNode(1);
TreeNode* node2 = new TreeNode(2);
printf("node1:%lld,node2:%lld\n ", node1,node2);
TreeNode* node3 = NULL;
node3 = node1;
node1 = node2;
printf("node1:%lld,node2:%lld, node3:%lld\n ", node1,node2,node3);
}

无视内存泄露,看关键问题:
node3 = node1; 此时node3指向node1;
node1 = node2;此时node1指向node2
我之前觉得node3此时也会指向node2,但结果不是。指针的赋值到底是怎么回事,发现我根本没有理解指针,球解释
...全文

相关推荐

评论 14
收藏 已收藏
分享
返回顶部
xiaolomg
C语言 70,040 成员 243,237 内容