函数的功能是交换变量x和y中的值,并且通过正确调用返回交换的结果。能正确执行此功能的函数是
答案:2 悬赏:50
解决时间 2021-03-06 15:26
- 提问者网友:心如荒岛囚我终老
- 2021-03-06 02:19
函数的功能是交换变量x和y中的值,并且通过正确调用返回交换的结果。能正确执行此功能的函数是
最佳答案
- 二级知识专家网友:鱼芗
- 2021-03-06 02:31
在C++中,函数参数主要采用两种传递方式:值传递和引用传递。所谓值传递是指在调用函数时将实际参数复制一份传递到函数中,这样,在函数中如果对参数进
行修改,将不会影响到实际参数;而引用传递是指在调用函数时将实际参数的地址传递到函数中,那么,在函数中对参数所进行的修改,将影响到实际参数。
如何判断函数是值传递还是引用传递呢?这需要根据参数的数据类型来判断,如果参数的数据类型是指针类型、引用类型或数组类型,则函数是引用传递,其他情况下是值传递。因此,不仅只有引用数据类型才是按引用传递,指针和数组类型参数同样是按引用传递。
fund(int*x,int*y)是引用传递,函数内使用*x,*y实际会同时修改函数外同一地址的内容。
funb(int t)是值传递,无论函数内把参数修改成什么样子均不影响函数外的任何内容。
行修改,将不会影响到实际参数;而引用传递是指在调用函数时将实际参数的地址传递到函数中,那么,在函数中对参数所进行的修改,将影响到实际参数。
如何判断函数是值传递还是引用传递呢?这需要根据参数的数据类型来判断,如果参数的数据类型是指针类型、引用类型或数组类型,则函数是引用传递,其他情况下是值传递。因此,不仅只有引用数据类型才是按引用传递,指针和数组类型参数同样是按引用传递。
fund(int*x,int*y)是引用传递,函数内使用*x,*y实际会同时修改函数外同一地址的内容。
funb(int t)是值传递,无论函数内把参数修改成什么样子均不影响函数外的任何内容。
全部回答
- 1楼网友:掌灯师
- 2021-03-06 03:24
要求一个颠倒x,y的函数,就是说把x,y输入到函数中,函数能把他们颠倒。
第二个函数的参数中没有x和y的指针,所以根本不可能获得x,y的地址,自然也就不可能颠倒x,y,而且大括号里的x,y也没有变量声明,只会报错而已。
第二个函数的参数中没有x和y的指针,所以根本不可能获得x,y的地址,自然也就不可能颠倒x,y,而且大括号里的x,y也没有变量声明,只会报错而已。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯