c语言函数调用中的调用参数

数据结构与算法中的顺序表里面经常出现调用方法,有的在里面用&,有的用*,这是怎么区别

3个回答

&根据变量是取地址。*是根据指针求这个地址上存的值。
一般对普通变量用&得到指针,对指针变量用*得到地址。不能对非指针变量使用*,但是可以对指针变量再使用&,结果是地址的地址。
&出现在函数的参数中还有一个用处是,作为引用(这个不是C语言的语法,而是C++才有的)
具体参考:http://blog.sina.com.cn/s/blog_673ef8130100imsp.html

& 和直接 int a 表示传递引用和传递值,传递引用的话,那么传入的这个值本身会发生变化,传入值的话,那么传入的这个值本身不会发生变化
*表示传入的是指针,属于引用传递

引用相当于给你的变量娶一个别名,同一块内存不同的名称,而指针就是变量内存的首地址

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问