從選擇編輯器、撰寫程式碼、命令列編譯到執行,完整體驗 C# 開發流程。
// helloworld.cs
class HelloWorld
{
public static void Main()
{
System.Console.WriteLine("Hello World");
}
}
| 元素 | 說明 |
|---|---|
class | C# 程式碼基本單位,所有程式碼必須在類別內 |
Main() | 程式進入點,必須 static,回傳 void 或 int |
static | 無需實例即可呼叫,類別名稱直接呼叫 HelloWorld.Main() |
public | 存取修飾詞,允許外部呼叫(執行環境需呼叫 Main) |
System.Console | 完整型別名稱,System 為命名空間 |
// 無參數、無回傳
public static void Main()
// 有回傳碼(供作業系統/腳本判斷)
public static int Main()
// 接收命令列參數
public static void Main(string[] args)
public static int Main(string[] args)
注意:args 不包含程式路徑(不同於 C/C++ 的 argv[0]),僅包含實際參數。
// 編譯產生 helloworld.exe
csc helloworld.cs
// 指定輸出檔名
csc /out:hello.exe helloworld.cs
// 參考外部組件
csc /r:System.Net.dll /out:app.exe program.cs
編譯成功無輸出訊息,直接執行 helloworld 即可看到結果。
Console.Write("不換行輸出");
Console.WriteLine("換行輸出");
Console.WriteLine("格式化 {0} 與 {1}", "參數1", "參數2");
Console.Write("請輸入姓名:");
string name = Console.ReadLine(); // 讀取整行
Console.WriteLine($"Hello, {name}!");
// 標準格式指定項
Console.WriteLine("{0:C}", 1234.5); // 貨幣:$1,234.50
Console.WriteLine("{0:P}", 0.25); // 百分比:25.00%
Console.WriteLine("{0:N}", 1000000); // 數字:1,000,000.00
Console.WriteLine("{0:D5}", 42); // 十進位補零:00042
Console.WriteLine("{0:X}", 255); // 十六進位:FF
// 對齊與填充
Console.WriteLine("|{0,10}|", "右對齊"); // 寬度 10 右對齊
Console.WriteLine("|{0,-10}|", "左對齊"); // 寬度 10 左對齊
| 類型 | 語法 | 範例 |
|---|---|---|
| 單行 | // | // 這是說明 或 int x = 1; // 註解 |
| 多行 | /* ... */ | /* 多行\n說明 */ |
| 文件註解 | /// | /// |
警告:多行註解不可巢狀,內部 */ 會提前結束外層註解。
using System;
class GreetingApp
{
static void Main()
{
Console.Write("請輸入您的姓名:");
string name = Console.ReadLine();
Console.Write("請輸入您的年齡:");
int age = int.Parse(Console.ReadLine());
Console.WriteLine($"你好,{name}!明年您將 {age + 1} 歲。");
Console.WriteLine("按任意鍵結束...");
Console.ReadKey();
}
}
Main() 是程式進入點,支援多種簽章csc.exe 命令列編譯器,/out 指定輸出、/r 參考組件Console 類別提供 Write/WriteLine/ReadLine/ReadKey 等基本 I/O{0}、{1}... 對應後續參數/// 文件註解可產出 API 文件