C#中怎么实现函数的传值与传址

发布时间:2020-11-30 16:27:06 作者:Leah
来源:亿速云 阅读:255

本篇文章给大家分享的是有关C#中怎么实现函数的传值与传址,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

      传值就是将实参的值传到所调用的函数里面,实参的值并没有发生变化,默认传值的有int型,浮点型,bool型,char字符型,结构体等等。

      传址就是将地址传到所调用的函数里面操作,实参的值也会跟着变化,传址的有数组和字符串string。

      上面说的就牵扯到数据的分类,分为值类型和引用类型,值类型的就是传值的那种,引用类型包括字符串类型,数组和对象,字符串类型特殊,主要是因为字符串实际上是一个字符char[]数组,它在修改的时候并不是直接修改,而是新开辟了一个存储空间也就是建立了一个新的字符串,所以它在调用、赋值的using System;

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
namespace _1019传值传址
{
  class Program
  {
    //一、传值-将变量的值传入函数中
    public void Qiuhe(int a)
    {
      int b = a + 10;
      Console.WriteLine(b);
    }////写个函数,传值进去,传姓名、性别、年龄进去//将年龄+10岁,
    //return反馈回来 split分割
    public string Fanhui(string name, string sex, int age)
    {
      age += 10;
      return name + "-" + sex + "-" + age;
    }

    //三、out传址-仅仅将变量名带入函数,不考虑参数值,out自动默认return
    public void Fanhui1(int a,out int b)
    {
      b = a + 10;
    }

    static void Main(string[] args)
    {
      //调用函数之前需要先初始化、实例化该Class类
      Program Hanshu = new Program();

      //一、传值-将变量的值传入函数中
      int a = 5;
      int b = 10;
      Hanshu.Qiuhe(a);
      Console.WriteLine(b);
      //最后输出b结果为10,为什么不是5+10=15?
      //因为外部定义的int b 与内部定义的int b 不是同一个b ,仅仅是用了同一个字母来表示而已      //二、一个函数只能返回一个值,将函数返回的值用split进行分割后放入一维数据获取多个值
      string ss = Hanshu.Fanhui("张三", "男", 33);
      string[] xx = ss.Split('-');
      for (int i = 0; i < 3; i++)
      {
        Console.WriteLine(xx[i]);
      }//三、out传址
      int aa = 5;
      int bb = 10;
      Hanshu.Fanhui1(aa, out bb);
      Console.WriteLine(bb);
      //传址:将这个变量名直接传输过去,若在另一边有赋值情况,这个变量名将变化      Console.ReadLine();
    }
  }
}

以上就是C#中怎么实现函数的传值与传址,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. 函数的传值调用,传址调用和引用调用分析
  2. React中传值与组件传值的关系是什么

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:如何修改Docke的r默认网段

下一篇:怎么在python项目中利用openCV实现一个截取视频功能

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》