主函数:指调用函数,如我们平常见到的main函数;子函数:指被调用函数。
“形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元”
这句话我们通俗的来理解就是。。。主函数调用了子函数,子函数里的形参于是把主函数里的形参值复制了一份拿到自己那里去计算,真正的实参是没有动的,形参得到了实参的复制品,开始进行运算,然后把结果算出来,写到一张纸上(就是把数据写入内存)然后“即刻释放所分配的内存单元”。。这句话意思就是把这张纸烧了........所以实参还老老实实的站在原地,你这时候无论怎么输出,实参不变。
但是。。。指针就可以改变主函数里的值。不管它是形参还是实参,只要是变量,就在内存空间有一个专属自己的地址。
所以。。。如果子函数想要去改变主函数里的值就必须要做一下两件事
①传指针。直接将实参的地址进行传送。
②解引用。通过对指针的解引用去修改其中的值。
下面我们就利用这个性质。。。可以得出结论:对置空指针进行解引用时会导致程序的崩溃。
所以我们知道了,你想要去修改谁的值,就传谁的指针,形参的类型根据其改变即可。