用慣了VS來寫C#代碼,要是用記事本寫會不會覺得很好玩,然后再CMD窗口下編譯運(yùn)行,當(dāng)然寫一些簡單的Console代碼還是可以這么玩玩的,如果你覺得打開VS太麻煩的話。
把后綴名改成.cs,test.cs。
打開cmd…
csc.exe是.NET Framework SDK中的一個工具,用起來很不錯,詳細(xì)怎么用參見MSDN吧。
今天用這個配置了下editplus,以后一些小程序可以在editplus編譯運(yùn)行了,
可以通過鍵入其可執(zhí)行文件 (csc.exe) 的名稱來調(diào)用 c# 編譯器在命令提示。
如果使用 Visual Studio 命令提示 窗口中,所有必要的環(huán)境變量為您設(shè)置。 在 windows 7 中,可以通過打開 Microsoft Visual Studio Version\Visual Studio Tools 文件夾從 Start 菜單進(jìn)入該窗口。 在 windows 8 中,Visual Studio 命令提示調(diào)用 VS2012 開發(fā)人員命令提示,因此,您可以通過從開始搜索屏幕中找到它。
如果使用標(biāo)準(zhǔn)命令提示符窗口,必須調(diào)整路徑,然后才能調(diào)用 csc.exe 可從計(jì)算機(jī)上之前的任何子目錄。 您還必須運(yùn)行 vsvars32.bat 設(shè)置適當(dāng)?shù)沫h(huán)境變量來支持命令行生成。 有關(guān) vsvars32.bat 的更多信息,包括如何的命令可以查找和運(yùn)行它,請參見 如何:設(shè)置環(huán)境變量。
如果您處理只有 Windows 軟件開發(fā)包 (SDK)的計(jì)算機(jī),則可以使用 C# 編譯器在 SDK 命令提示,則從 Microsoft .NET Framework SDK 菜單選項(xiàng)打開。
也可以使用 MSBuild 生成 C# 編程模型。 有關(guān)更多信息,請參見MSBuild。
csc.exe 可執(zhí)行文件通常位于 windows 目錄下的 Microsoft.NET\framework\版本 文件夾在。 其位置可能基于特定計(jì)算機(jī)的完全相同的配置。 如果多個 .NET framework 版本安裝在計(jì)算機(jī)上,您將發(fā)現(xiàn)此文件的多個版本。 有關(guān)此類安裝的更多信息,請參見確定安裝的 .NET Framework 版本。
提示
使用 Visual Studio IDE 時(shí),將生成項(xiàng)目,可以顯示 csc 命令及其關(guān)聯(lián)的編譯器選項(xiàng)在 輸出 窗口。 若要顯示此信息,請按照 如何:查看、保存和配置生成日志文件 的命令來更改日志數(shù)據(jù)的詳細(xì)標(biāo)準(zhǔn)到 普通 或 詳細(xì)。 在重新生成您的項(xiàng)目,然后搜索 輸出 窗口 csc 查找 C# 編譯器的調(diào)用。
命令行語法規(guī)則主題內(nèi)容
命令行示例
C# 編譯器和 C++ 編譯器輸出之間的差異
C# 編譯器的命令行語法規(guī)則
在解釋操作系統(tǒng)命令行上給出的參數(shù)時(shí),C# 編譯器使用下列規(guī)則:
參數(shù)用空白分隔,空白可以是一個空格或制表符。
^ 字符 (^) 未被識別為轉(zhuǎn)義符或者分隔符。 該字符在被傳遞給程序中的 argv 數(shù)組前,由操作系統(tǒng)的命令行分析器進(jìn)行處理。
無論其中是否包含空白,帶雙引號的字符串 ("string") 均被解釋為單個參數(shù)。 帶引號的字符串可以嵌入在參數(shù)內(nèi)。
前面有反斜杠的雙引號 (\") 被解釋為原義雙引號字符 (")。
反斜杠按其原義解釋,除非它們緊位于雙引號之前。
如果偶數(shù)個反斜杠后跟雙引號,則每對反斜杠中有一個反斜杠放置在 argv 數(shù)組中,而雙引號被解釋為字符串分隔符。
如果奇數(shù)個反斜杠后跟雙引號,則每對反斜杠中有一個反斜杠放置在 argv 數(shù)組中,而雙引號由剩余那個反斜杠進(jìn)行“轉(zhuǎn)義”。 這會將雙引號字符 (") 添加到 argv 中。
C# 編譯器的示例命令行
編譯 File.cs 以產(chǎn)生 File.exe:
csc File.cs
編譯 File.cs 以產(chǎn)生 File.dll:
csc /target:library File.cs
編譯 File.cs 并創(chuàng)建 My.exe:
csc /out:My.exe File.cs
通過使用優(yōu)化和定義 DEBUG 符號,編譯當(dāng)前目錄中的所有 C# 文件。 輸出為 File2.exe:
csc /define:DEBUG /optimize /out:File2.exe *.cs
編譯當(dāng)前目錄中的所有 C# 文件,以生成 File2.dll 的調(diào)試版本。 不顯示任何徽標(biāo)和警告:
csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
將當(dāng)前目錄中的所有 C# 文件編譯為 Something.xyz(一個 DLL):
csc /target:library /out:Something.xyz *.cs
C# 編譯器和 C++ 編譯器輸出之間的差異
沒有由于調(diào)用 C# 編譯器創(chuàng)建的對象 (.obj) 文件;輸出文件直接創(chuàng)建對象。 因此,C# 編譯器不需要鏈接器。