1樓:華師
c# main函式的四種情況:
static void main() static int main() static void main(string args) static int main(string args)
1.主程式main函式一共有以上四種版
2.一個程式中不能有兩個以上的main函式,有且只有一個
3.main函式只能返回int型別,如果返回1,則從命令列呼叫不成功。否則成功
4.在命令列傳輸引數時,存放在string陣列args中。使用length屬性來測試輸入引數的個數。
5.使用foreach語句來檢索所有的引數
6.程式入口主要供其他程式來執行本程式功能
引數輸入應用:
其實直接應用cmd命令開啟exe,在命令列中exe後面加上引數即可
如何向c# main函式傳遞引數呢?在vs控制檯應用程式下,我們看到c# main函式帶有一個string args引數,那麼你知道它有什麼實際的功能呢?下面我們來具體談談。
c# main函式獲取引數步驟1:
建立一個控制檯應用程式,暫且命名為main
c# main函式獲取引數步驟2:
貼上下面這段**,並生成release版本的exe(release版本的vs2008生成方法:生成(b)->批生成(t)—>生成,然後選擇生成release版本,就ok了)。
using system; using system.collections.generic; using system.
linq; using system.text; namespace 獲取命令列引數 ", args[i]); } else console.readkey(); } } }
c# main函式獲取引數步驟3:
在release檔案下複製main.exe到c盤的根目錄下(隨便一個碟符的根目錄都可以,只是為了後面使用的方便)
c# main函式獲取引數步驟4:
在命令列模式下輸入c:\>main a b c ,敲回車看結果
c# main函式獲取引數例項輸出結果為:
命令列引數:a
命令列引數:b
命令列引數:c
c# main函式獲取引數的具體實現內容就向你介紹到這裡,希望對你瞭解和學習c# main函式獲取引數有所幫助。
2樓:匿名使用者
private int gettotal(int x, int y)int x = 2;
int y = 3;
int total = gettotal(x, y); // x,y為引數傳遞, total = 5
c# 請問 如何將 函式名作為引數傳遞到另一個class 的 函式中?謝謝
3樓:匿名使用者
delegate string delemethod(int a, string b);
string method(int c, string d)string test(delemethod m)呼叫時就這樣
test(new delemethod(method));// vs2008裡可以簡寫為:test(method);
4樓:如魚の水
函式名為引數傳遞需要用委託才能傳遞,去學學委託。
5樓:匿名使用者
委託delegate,就是它了,很玄妙的一個東東!
在c#中何為引數,引數的定義是什麼?
6樓:匿名使用者
引數一般出現在方法裡面。如:public void get(string str,int age).....
在get後面的括號裡,就是形參,引數可以有很多中,具體情況需要結合實際的需求,去定義有效的引數,如果能幫助到樓主,請採納,萬分感謝~~
7樓:匿名使用者
引數是用來傳遞資料的。以下是是本人學習筆記 不同型別的引數傳遞 如果需要傳遞引數,我門可以傳遞字串、整數型、也可以傳遞類的物件。 1。值方式引數傳遞
在程式中不會修改值型別引數的值. 2.引用型別作為引數傳遞,傳遞方式還是值型別,也就是沒有ref。
雖然我沒有用ref方式傳遞,但是引數是引用型別,當應用變數發生變化時,引數發生了變化,所以我門說,
當類作為引數的時候,引數被修改時,可能修類成員的值. 2.引用方式引數傳遞
如果我門將引數作為引用方式傳遞,也就是用ref修飾引數。
ref方式傳遞引用方式傳遞引用型別和引用方式傳遞值型別,都會儲存方法中的修改. 1.值引數的呼叫
在main函式中宣告瞭一個i,這時候在記憶體的堆疊中就會專門為i開闢出一塊新的記憶體空間存放它,接下來執行了這個方法,它會在堆疊中開闢出另一個區域,並把i的值拷貝過來賦給方法中i的值,方法開始操作,導致方法中i的值加1,而main函式i的值未做任何改變,列印i的值,自然還是0.2.引用引數的呼叫在main函式中宣告j = 0;記憶體的堆疊中就會專門為j開闢出一塊空間存放j,這個時候呼叫了方法,方法把j,作為引數傳遞了進去,由於ref關鍵字的存在,使的這一次傳遞的是記憶體中的指標,方法通過這個指標找到引數i在記憶體中的地址而去操縱它。
main函式中的j和引數中的i指向的都是同一記憶體地址,它們的變數是一樣的,所以當方法引數給i加1,直接導致了j的變化。因為指向的都是同一記憶體地址。在呼叫ref以前必須對引數進行初始化,而不是在方法中進行初始化。
3.輸出引數的呼叫在輸出引數中,必須對引數進行初始化。從clr角度看,關鍵字out和ref是等效的,這就是說,無論使用哪個關鍵字,都會生成相同的後設資料和il**。
c#中,將這2個關鍵字區別對待,這兩個關鍵字區別在於哪個方法負責初始化引用物件。如果方法的引數為out,那麼呼叫者不希望在呼叫方法之前初始化物件,被呼叫的方法必須在返回之前為物件賦值。如果方法的引數標記為ref,那麼呼叫者必須在使用方法之前首先初始化引數的值,被呼叫的方法可以讀取引數或為引數賦值。
8樓:匿名使用者
引數是指向方法(函式)傳遞的資料,一般我們方法在行使功能時需要計算和操作不同的資料,這時可以將這些資料通過引數的形式傳遞給方法進行操作。 引數型別:1、值型別引數2、引用型別引數3、輸出型別引數
c 中兩個函式函式名相同,引數型別和引數個數也相同,但是函式型別不同,那它們是過載函式嗎
函式過載只看引數個數和型別 所以如果只是返回值相同的函式就不是過載函式了 莊政警 這樣不是過載。函式過載要求函式的引數個數不同或者引數型別不同。因為呼叫函式的時候無法確認函式的返回型別,所以僅返回型別不同的函式都可以匹配,這樣就造成二義性,所以僅僅是返回型別不同是不能過載的,比如有int f int...
c語言如何在可變引數函式中使用,C語言如何在可變引數函式中使用printf
兔子和小強 如 psxf91所答,應使用v 系列的函式來實現。對比下printf與vprintf函式原型 void printf const char format,void vprintf const char format,va list ap 可以看出二者的差別。vprintf才接收va li...
c 中rand 函式的範圍,c 中rand 函式的範圍 10
rand函式範圍 在某些平臺下 例如 windows rand max 只有 32768。如果需要的範圍大於 32768,那麼指定 min 和 max 引數就可以生成大於 rand max 的數了,或者考慮用 mt rand 來替代它。rand函式不是真正的隨機數生成器,而srand 會設定供ran...