很简单,写算法时,要返回的传地址,不需要返回的,传值
也可以这么说,要在函数中改变的,传地址,不需要改变的,传值
比如GetElem( L, i, &e)说明e的值在函数中会改变,需要返回到主函数中,因此要传地址,而i,L只是在函数中引用一下,不要返回到主函数中
实参传入函数中时,会在内存中另开辟一个空间,比如上面在主函数中调用
GetElem( L, i, &e);
此时在内存中复制一份
L,i,&e,因此在内存中操作L,i,是不会改变主函数中的值,而e复制的是地址(指针),照样指向主函数中的e,因此,改变*(&e)的内容,照样能改变主函数的e的值
-----------------------------
1正确
2你能不能把算法的功能简单的说下,还有函数的各个参数的用途
前面定义和本函数无关,只要在本函数中改变,就需要传地址