void swap(int a, int b) { int temp = a; a = b; b = temp;}
时间: 2024-04-04 15:14:00 浏览: 165
不使用中间变量,交换int型的 a, b两个变量的值。
这个交换函数是错误的,因为它只是交换了传入的参数 a 和 b 的值,而没有对调用它的函数产生任何影响。具体来说,当你在调用该函数时,传入的实参 a 和 b 的值会被复制到函数内部的形参 a 和 b 中,函数内部的操作只会改变形参 a 和 b,而不会改变实参 a 和 b。因此,这个函数是无效的。
如果要正确地交换两个变量的值,需要使用指针或者引用,可以参考我上面给出的代码。
阅读全文