qq_43815113 2018-12-04 08:24 采纳率: 0%
浏览 341

为什么交换失败了呢?是因为void返回值是零吗?求大佬解释

#include
using namespace std;

void swap(int,int);
int main(){
int a,b; //main()中定义的a,b,作用域为main()
cout<<"输入两整数:"< cin>>a>>b;
cout<<"调用前:实参a="<<a<<','<<"b="<<b<<endl;
swap(a,b);
cout<<"调用后:实参a="<<a<<','<<"b="<<b<<endl; //发现交换失败
return 0;
}

void swap(int a,int b){ //swap()中定义的a,b,作用域为swap()
cout<<"调用中…"<<endl;
cout<<"交换前:形参a="<<a<<','<<"b="<<b<<endl;
int t;
t=a; a=b; b=t; //交换a,b的值
cout<<"交换后:形参a="<<a<<','<<"b="<<b<<endl;
}

  • 写回答

1条回答 默认 最新

  • shellta 2018-12-04 08:36
    关注

    建议自行百度理解一下值传递和地址传递的区别

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable