我正在尝试使用指针并创建了这个示例,但我不明白为什么这不起作用。有人可以解释为什么当我在不引用的情况下传递值时该函数不执行 cin 操作吗?
#included proper headers and stuff
...
int main()
{
int a, b;
swap(a,b);
cout << "A: " << a << endl;
cout << "B: " << b << endl;
return 0;
}
void swap(int * p1, int *p2)
{
cin >> *p1;
cin >> *p2;
int temp = *p1;
*p1 = *p2;
*p2 = temp;
}
结果 cin 被跳过 A: 0 B: 0