函数参数传递

1. 值传递
#include <stdio.h>
int sum(int a , int b )
{
        a++;
        b++;
        return a+ b;
}

int main()
{
        int a, b;
       a=4;
       b=5;
       printf( "a=%d, b=%d, sum=%d\n" ,a,b,sum(a,b));
        return 0;
}


得到:
a=4, b=5, sum=11
可以看到,a,b值没有改变

2.使用指针
如果要改变a,b的值,可以有两种方法
int sum(int* a, int* b)
{
(*a)++;
(*b)++;
return *a+*b;
}


这里函数的参数是指针,调用后,可以间接改变参数的值,不变的是指针,也即地址

3.引用参数
引用参数是函数调用中传递实际参数的别名
允许调用的函数参数修改实际参数
int swap(int& a, int& b)
{
int tmp = b;
        b = a;
        a = tmp;
}


在参数的类型名称后面和参数名称前面加&
posted @ 2013-06-17 17:08  海滨银枪小霸王  阅读(127)  评论(0)    收藏  举报