函数内部的结构指针的问题
我以前也没多想就直接写了,今天突然觉得有个问题
就是这两句代码,其本质是把一个指针的值,赋给另外一个指针的值
但是我们知道,函数中是不能直接给变量赋值的,而是要用一个指针指向你要赋值的变量,通过指针来赋值
那么在这个函数中,目的是把p这个指针赋给parent->leftchild这个指针,那么我想问的就是为啥不需要用二阶指针呢~
比如说那个swap(int a, int b)的函数
要给ab交换,就得在函数内定义一个int*,用于指向int a, int b
那如果是swap(int* a, int* b)呢
是不是就应该定义一个二阶指针呢
我觉得我图中标红的两句代码在干的事情就是给指针赋值,那么就应该要定义一个二阶指针来指向它们啊
解答:
parent这个指针等于head等于bt,而bt是一个外面传进来的量,所以改变parent所指结构的内容也就等价于改变bt所指结构体的内容