您的位置:首页 > 编程语言 > C#

Visual Studio 2010——C#中函数的参数

2013-03-29 09:47 274 查看
实验环境:Windows XP,Visual Studio 2010 Ultimate

1 创建项目

文件>>新建>>项目,选中“控制台应用程序”,如下图所示:




2 添加代码如所示意。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace testParameterApp
{
    class Program
    {
        //i为引用,其值将在函数中改变
        public static void addOne(ref int i)
        {
            Console.WriteLine("ref参数");
            i = i + 1;
        }

        //i为引用,其值将改变;j为值,其值不受影响
        public static void Subtract(ref int i, int j)
        {
            Console.WriteLine("ref参数 and val参数");
            i = i - j;
            j = j - 1;//j值在函数中修改,并不影响实参
        }

        //i为out引用,其值等于函数中的i的运算结果
        public static void SetValue(out int i, int j)
        {
            Console.WriteLine("out参数 and val参数");
            i = j;
        }

        //iArray表示多个int型参数,传值
        public static int GetSum(params int[] iArray)
        {
            Console.WriteLine("params参数");
            int sum = 0;

            //foreach遍历各个参数
            foreach (int i in iArray)
            {
                sum = sum + i;
            }
            return(sum);
        }

        //sum为out引用,iArray表示多个int型参数
        public static void GetSum(out int sum, params int[] iArray)
        {
            Console.WriteLine("out参数 and params参数");
            sum = 0;//out参数在函数中必须先初始化,才可以使用

            //遍历各个参数
            for (int i = 0; i < iArray.Length; i++)
            {
                sum = sum + iArray[i];
            }
        }

        //int[]为值参数
        public static int GetArraySum(int[] iArray)
        {
            int sum = 0;
            foreach (int i in iArray)
            {
                sum += i;
            }
            return sum;
        }

        static void Main(string[] args)
        {
            //声明int变量,未初始化
            int num1, num2, sum1, sum2, sum3;

            //用out引用变量,num1,num2无需初始化
            SetValue(out num1, 10);
            SetValue(out num2, 5);
            Console.WriteLine("Number1={0},Number2={1}", num1, num2);
            
            //ref引用变量,num1必须先初始化
            addOne(ref num1);
            Console.WriteLine("Number1={0},Number2={1}",num1,num2);
            Subtract(ref num1, num2);
            Console.WriteLine("Number1={0},Number2={1}", num1, num2);
            
            //params参数可以为0个或多个
            sum1 = GetSum();
            sum1 = GetSum(num1, num2);

            //sum2为out引用,无需初始化
            GetSum(out sum2, num1, num2);
            sum3 = GetArraySum(new int[] { num1, num2 });
            Console.WriteLine("Sum1={0},Sum2={1},Sum3={2}", sum1, sum2, sum3);
        }
    }
}


3 调试

单击菜单栏的“调试”|“启动调试”,结果如下图。



4 工程源码。点击这里下载。

参考资料

《C#实用编程百例》,清华大学出版社,何鹏飞,王征等 编著

《C#程序设计——基础教程与实验指导》——清华大学出版社,孙晓非 牛小平 冯冠 李乃文 编著

《C#程序设计与案例教程》,清华大学出版社,杨树林,胡洁萍 编著
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: