c++,请问如图所示使用指针交换两个int 数,实参加不加&结果为什么一样呢?

img

把函数换个名字,不要写成swap,你上面那个调的是自己的,下面那个调的是标准库的swap,标准库也有一个swap,传引用的

你这什么编译器啊?VS2010下根本不能通过编译,整型不能传递给指针类型

去掉使用命名空间吧,using namespace std:
&t 是取地址的意思,所以是指针,和你自定义的函数相匹配,不传引用,那么就是标准库的std::swap,标准库原型void swap(_Ty& _Left, _Ty& _Right) noexcept 是引用类型,所有是可以匹配上的。