C++参数传递-创新互联

交换a和b的值

成都创新互联长期为超过千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为茶陵企业提供专业的成都网站设计、成都做网站、外贸网站建设茶陵网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
#includevoid swap(int a, int b)
{int t = a; a = b; b = t;
}
int main()
{int a = 3, b = 4;
swap(3, 4);
printf("%d %d\n", a, b);
return 0;
}

这个是错误的,输出的仍然是3,4,将实参传入形参不能改变形参的值,只是形参中多了空间储存实参
在这里插入图片描述
值传递,不能实现交换。故可使用引用传递。
在这里插入图片描述

#includevoid swap(int &a,int &b)
{int t=a;a=b;b=t;
}
int main()
{int a=3,b=4;
    swap(a,b);
    printf("%d %d\n",a,b);
    return 0;
}

在这里插入图片描述
另外也可以用指针。

#includevoid swap(int* a, int* b)
{int t = *a; *a = *b; *b = t;
}
int main()
{int a = 3, b = 4;
swap(&a, &b);
printf("%d %d\n", a, b);
return 0;
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享标题:C++参数传递-创新互联
分享URL:http://myzitong.com/article/ceohpc.html