一个简单的程序,大家给分析一下
private void button1_Click(object sender, System.EventArgs e)
{
int i=7;
int j=5;
swap(i,j);
textBox1.Text=i.ToString()+j.ToString();
}
private void swap(int a,int b)
{
int x;
x=a;
a=b;
b=x;
}
上面这段代码调用之后i和j的值并没有交换,请高手指教一下如何实现,并解释一下
------解决方案--------------------可以这样子实现:
static void Main(string[] args)
{
int i = 7;
int j = 5;
swap(ref i, ref j);
Console.WriteLine( i.ToString() + j.ToString());
}
private static void swap(ref int a, ref int b)
{
int x;
x = a;
a = b;
b = x;
}