C语言地址传递


#include <stdio.h>函数

int GetSum(int* _sum, int _num1, int _num2)
{
//将ps的值赋给_sum,_sum的值就是ps的值,即sum的地址,*_sum就是取_sum上存放的地址的值。对*_sum作运算,就会改变sum的值
    *_sum = _num1 + _num2;
    return *_sum;
}io

void main()
{
    int sum = 0;
  //将sum的地址赋给ps,ps的值就是sum的地址,ps的地址与sum的地址不一样,是各自单独的存储空间
    int* ps =  & sum;class

    int num1 = 1;
    int num2 = 2;
//函数GetSum传递ps的值
    GetSum(ps, num1, num2);  //经过传递sum变量的地址,在函数内部改变其值
}变量

备注:
sum,ps,_sum都有各自独立的存储空间,各地址均不相同。
可是ps和_sum的值相同,等同于&sum。di

相关文章
相关标签/搜索