c#中的两个数值交换问题新手提问,各位大哥大姐帮忙看看怎么回事! 谢谢!最后的数值怎么交换不过来?  在线等!
using System;   
class Program
    {
        private static void change(int a, int b)
        {
            int c;
            c = a;
            a = b;
            b = c;
         }
     private   static void Main(string[] args)
        {
          Console.WriteLine("please input a:");
            int a=Convert.ToInt16( Console.ReadLine());
          Console.WriteLine("please input b:");
            int b=Convert.ToInt16( Console.ReadLine());
            change(a,b);
            Console.WriteLine("a={0},b={1}",a,b);         }
        }

解决方案 »

  1.   

    结果如下 没有交换过来:please input a:
    15
    please input b:
    12
    a=15,b=12
      

  2.   

    int是值类型。
    lz知道C++里的传值和引用吧?
      

  3.   

    private static void change(ref int a, ref int b)
            {
                int c;
                c = a;
                a = b;
                b = c;
             }   change(ref a, ref b);
      

  4.   

    支持楼上,chang函数里值的改变没 return 出来。
      

  5.   

    ref , out 关键字都可以。先看看C#的基础知识吧。
      

  6.   

    out 不成 -_-out传不进值
      

  7.   

    zswang(伴水清清)(专家门诊清洁工)  说的对
      

  8.   

    UP !!传值和引用是不同的!!LZ最好看看基础的东东!