淺析C# 函數(shù)的傳值與傳址
傳值就是將實參的值傳到所調(diào)用的函數(shù)里面,實參的值并沒有發(fā)生變化,默認(rèn)傳值的有int型,浮點型,bool型,char字符型,結(jié)構(gòu)體等等。
傳址就是將地址傳到所調(diào)用的函數(shù)里面操作,實參的值也會跟著變化,傳址的有數(shù)組和字符串string。
上面說的就牽扯到數(shù)據(jù)的分類,分為值類型和引用類型,值類型的就是傳值的那種,引用類型包括字符串類型,數(shù)組和對象,字符串類型特殊,主要是因為字符串實際上是一個字符char[]數(shù)組,它在修改的時候并不是直接修改,而是新開辟了一個存儲空間也就是建立了一個新的字符串,所以它在調(diào)用、賦值的using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
namespace _1019傳值傳址
{
class Program
{
//一、傳值-將變量的值傳入函數(shù)中
public void Qiuhe(int a)
{
int b = a + 10;
Console.WriteLine(b);
}////寫個函數(shù),傳值進(jìn)去,傳姓名、性別、年齡進(jìn)去//將年齡+10歲,
//return反饋回來 split分割
public string Fanhui(string name, string sex, int age)
{
age += 10;
return name + "-" + sex + "-" + age;
}
//三、out傳址-僅僅將變量名帶入函數(shù),不考慮參數(shù)值,out自動默認(rèn)return
public void Fanhui1(int a,out int b)
{
b = a + 10;
}
static void Main(string[] args)
{
//調(diào)用函數(shù)之前需要先初始化、實例化該Class類
Program Hanshu = new Program();
//一、傳值-將變量的值傳入函數(shù)中
int a = 5;
int b = 10;
Hanshu.Qiuhe(a);
Console.WriteLine(b);
//最后輸出b結(jié)果為10,為什么不是5+10=15?
//因為外部定義的int b 與內(nèi)部定義的int b 不是同一個b ,僅僅是用了同一個字母來表示而已 //二、一個函數(shù)只能返回一個值,將函數(shù)返回的值用split進(jìn)行分割后放入一維數(shù)據(jù)獲取多個值
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# 函數(shù)的傳值與傳址的詳細(xì)內(nèi)容,更多關(guān)于c# 函數(shù)傳值與傳址的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
C#中如何在Excel工作表創(chuàng)建混合型圖表實例
本篇文章主要介紹了C#中如何在Excel工作表創(chuàng)建混合型圖表實例,具有一定的參考價值,有需要的可以了解一下。2016-11-11
C#中使用Override和New關(guān)鍵字進(jìn)行版本控制
在?C#?中,override?和?new?關(guān)鍵字用于控制類之間的成員方法的隱藏和重寫,理解它們之間的差異和使用場景對于設(shè)計靈活且易于維護(hù)的代碼至關(guān)重要,在這篇博客中,我們將詳細(xì)探討這兩個關(guān)鍵字的用法,并通過示例來說明它們的實際應(yīng)用,需要的朋友可以參考下2024-10-10
在web.config和app.config文件中增加自定義配置節(jié)點的方法
本篇文章主要是對在web.config和app.config文件中增加自定義配置節(jié)點的方法進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01
C#基礎(chǔ)語法:Base關(guān)鍵字學(xué)習(xí)筆記
這篇文章主要介紹了C#基礎(chǔ)語法:Base關(guān)鍵字學(xué)習(xí)筆記,本文講解了它的一些基礎(chǔ)知識以及測試代碼,需要的朋友可以參考下2015-06-06

