首页 > 其他 > 详细

形参与实参

时间:2019-04-14 15:04:09      阅读:90      评论:0      收藏:0      [点我收藏+]

今天偶然从书上看到“形参与实参”

如果运行下面的代码

#include<iostream>

using namespace std;

void swap(int a,int b){

    int t=a;

    a=b;

    b=t;

}

int mian(){

    int x,y;

    swap(x,y);

    cout<<x<<y;

    return 0;

} 

最后是得不到交换的

因为a与b只是x与y的副本

a与b的交换并不会导致x与y的交换

就相当于a与b复制了x与y,但a与b做改动是不会影响x与y的

同时,形参与实参也是有许多不同的

实参一定要有一个确定的量

而形参的量是由它复制的实参的量决定的

所以怎么办才可以让x与y交换呢

1.全局变量

#include<iostream>

using namespace std;

void swap(){

    int t=x;

    x=y;

    y=t;

}

int mian(){

    swap();

    cout<<x<<y;

    return 0;

}     

2.加上“&”

#include<iostream>

using namespace std;

void swap(int &a,int &b){

    int t=a;

    a=b;

    b=t;

}

int mian(){

    int x,y;

    swap(x,y);

    cout<<x<<y;

    return 0;

}

这个值得提一下,在a与b前加上&,就相当于说a与b就是x与y的小名啦

既然只是名字不同那一个变另一个不也变吗

3.我脑子疯啦?用什么函数

#include<iostream>

using namespace std;

int mian(){

    int x,y;

    int t=x;

    x=y;

    y=t;

    cout<<x<<y;

    return 0;

}    

(其实我理解的也不是很透彻啦,所以有bug欢迎回复QWQ)

形参与实参

原文:https://www.cnblogs.com/FC-001/p/10705102.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!