简单C语言函数问题
void Insert(int *&a)
{
//函数内部的参数如何解释
//&是取地址 int * 是定义一个指针变量 我理解的
//求大神科普
}
[解决办法]
我的理解:
void InsertT(LNode *&C,int arry[],int x) 中的第一个参数是一个LNode*类型的引用,即一个对指针类型的引用,这是一个pass by reference的方式,目的是改写指针LNode* C的值(函数体内通过将malloc的值赋给C,的确达到了这个目的)
类似于这个:
void test_ref(int *&a)
{
a = new int;
*a = 10;
}
void main()
{
int *p;
test_ref(p);
cout<<*p<<endl;
}
[解决办法]
这里'&'不是取地址,是引用
[解决办法]
这明显是C++的引用啊
[解决办法]
C里想修改指针的值,直接用指针的指针就行了啊,(LNode **C),没用过引用,在C里面