假定 int a, b=3, 5;
-
新手常见的思路是:
a=b;
b=a;
这样是无法达到交换值的目的,其原因为:
首先明确=是赋值运算符,a=b是将b的值赋给a,所以当第一行的代码执行完后,a的值为5,b的值也为5。
接下来执行到了第二行代码,同理,因为=是赋值运算符,所以将a的值赋给b,因为此时的值为5,所以将a的值赋给b后,此时a与b的值均为5。
不符合题意 -
若要解决这个问题,可以用指针,也可以再创建一个新的变量,将a的初始值放入该变量中,即:
假定 int a, b=3, 5;
新手常见的思路是:
a=b;
b=a;
这样是无法达到交换值的目的,其原因为:
首先明确=是赋值运算符,a=b是将b的值赋给a,所以当第一行的代码执行完后,a的值为5,b的值也为5。
接下来执行到了第二行代码,同理,因为=是赋值运算符,所以将a的值赋给b,因为此时的值为5,所以将a的值赋给b后,此时a与b的值均为5。
不符合题意
若要解决这个问题,可以用指针,也可以再创建一个新的变量,将a的初始值放入该变量中,即: