我知道如何在c ++中交换2个变量,即你使用std::swap(a,b).
题:
是否C标准库也有类似的功能,C++ std::swap()或我定义它自己.
浏览以下C代码
# define swap(a,b) temp=a; a=b; b=temp;
main( )
{
int i, j, temp;
i=5;
j=10;
temp=0;
if( i > j)
swap ( i, j );
printf ( "%d %d %d", i, j, temp);
}
Run Code Online (Sandbox Code Playgroud)
编译器输出:
10 0 0
Run Code Online (Sandbox Code Playgroud)
我期待这个输出
10 5 0
Run Code Online (Sandbox Code Playgroud)
我为什么错?