首先说明C语言没有引用这个概念,引用是c++里的,一般初学者写C语言程序都在vc里写的.cpp文件,那是c++的,所以它会有引用。
解释一下引用 ,一个人可以有大名,小名,还有其他的名字,不管是什么名字,都是指的一个人,那么一个变量也可以有多个名字,不管叫什么,指向的都是同一块内存。
在C语言中,当作取地址的时候,&是一个一元运算符,和! ~ * -等类似。作为按引用传递的时候,&不是运算符,是修饰符。
函数定义中不能出现运算符。
不信你试试
int foo(int -a)
int foo(int !a)
都是不能编译的。
在c++中,&可以有 引用这种用法,C语言中没有这个概念。