C语言中的传值调用

  在c语言中每个变量都有两个属性一个是值,一个是址。

比方:

int a = 2; 

  变量a的值是2,变量a的地址,能够用&取地址操作符获取,即&a。
  因此以C语言的函数传递中具备两种方式传递參数,一种是传址,一种传值。

比方:


void f1(int v)  { ; }    //函数f1
void f2(int *p) { ; }    //函数f2 
f1(a) ;                  //这里传值 
f2(&a);                  //这是传址

   再比方:
   

void fun(int a, int b); 
int main()
{        
    int c = 1;        
    int d = 2;        
    fun(c, d);  //这里传递进去的c和d。跟形參a,b的地址都不是同一
                //个地址,不过将c的值赋给a,d的值赋给b,
                //在fun函数里面改变a和b的值,跟c和d本身无不论什么关系        
    return 0;
}
原文地址:https://www.cnblogs.com/yangykaifa/p/7294297.html