-
呵呵。。。。。。巧合,绝对是巧合,呵呵.........C++ 库函数具有 swap 函数,并且此函数仍然是泛型的。
templateinline
void swap(_ty& _x, _ty& _y)_ty _tmp = _x;
x = _y, _y = _tmp; }
第一:你自己写的比较匹配,所以你自己写的。
第二个:你写的不匹配,会调用库函数的swap,这个泛型函数会帮你做这个工作,你可以在swap中设置一个断点,然后调试,发现它根本没有执行。 (一楼的那个很不对)。
-
显然,第一个你把 a 和 b 的地址分别分配给 *s1 和 *s2,所以 *s1=&a;*s2=&b;
第二个将 a 和 b 作为参数分别传递给表单参数 *s1 和 *s2因此,*s1=a; *s2=b.
-
templateinline
void swap(_ty& _x, _ty& _y)_ty _tmp = _x;
x = _y, _y = _tmp; }
执行的就是这个,而你自己写的根本没有执行。
因为你自己写了一个函数,所以相当于库函数的重载,如果参数类型和名称的数量相同,则为重写。 第一个程序被重写,执行您自己的程序,第二个重载,执行匹配的参数类型和编号。
对于函数重载,您可以查找教科书。 他们也有很多。
-
二显然是错的,结果只能说地址2的内容是3,地址是3内容是 2
-
temp=a*;
a*=b*;
b*=temp;
什么是a* b*? 是的,*a *b 是好与否,a 和 b 是指针,* 运算符应放在指针前面,参见:
更深入地了解 C 指针的奥秘。
-
它不应该是 a*,它应该是 *a,下面的 i* 和 j* 应该替换为 *i *j
-
#include
void exchange(int* a,int* b)int main()
房东明白了! 如果你不明白,我会帮你回答。
-
c 语言?
只需编写一个函数,viod exchange(a,b)。
-
大概逻辑是。
创建一个临时变量。
1.将 a 的值赋值给临时变量。
2.将 b 的值赋值给 a
3.将临时变量的值赋值给 b
-
#include ""void main() 我的是 C 语言,你试试吧。
-
问题 1:程序 Ex;
vara,b,c:integer;
beginreadln(a);
readln(b);
c:=a;a:=b;
b:=c;writeln(a,' ',b);
end.问题 2:程序 Ex;
vara,b:integer;
beginreadln(a);
readln(b);
a:=a-b;
b:=a+b;
a:=b-a;
writeln(a,' ',b);
end.收养我。
你的函数错了,(int a, int b)是一个值传递参数,它对参数本身没有影响,返回a,b; 这是我第一次看到这种想法。 应使用指针参数或引用参数。 >>>More