实际参数中应包含一个'&',以提供所需的结果,但是以下代码也可以正确交换数字。
void swap(int *a, int *b){
int t=*a;
*a=*b;
*b=t;
}
//there is an array ar[]
swap(ar[0],ar[1]);
它应该给出一些垃圾值,但是给出正确的答案。
答案 0 :(得分:0)
函数调用实际上是在调用库定义的std::swap
函数,而不是您的自定义交换函数(由于类型不匹配)。
更改函数的名称,看看它是否可以编译。