c语言中指针与函数的关系

#include 
//指针与函数的关系
/*指针作为函数的参数
 *函数的传参方式:
 * 复制传参:
 * 将实参的值传递给形参,不管形参怎么改变,跟实参都没有关系
 * 地址传参:
 * 将实参的地址传递给形参,形参对保存的地址的内容进行任何操作,实现的值也会跟着改变
 */
//复制传参
void myfun1(int a,int b){
    int temp;
    temp=a;
    a=b;
    b=temp;
    printf("in fun: a = %d, b = %d\n",a,b);
}
//地址传参
void myfun2(int *p,int *q){
    int temp;
    temp = *p;
    *p=*q;
    *q=temp;
    printf("in fun: *p = %d, *q = %d\n",*p,*q);
}
void test1(){
     int a=100,b=55;
     printf("before fun: a = %d, b = %d\n",a,b);
     myfun1(a,b);
     myfun2(&a,&b);
     printf("after fun: a = %d, b = %d\n",a,b);
}
int main()
{
    test1();
    return 0;
}
 
 

你可能感兴趣的:(c语言,算法,开发语言)