首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 基礎入門:資料型別與變數完整指南

     編輯:關於C語言

前言

應廣大網友需求,我們將在未來兩週內每日推出一個 C# 基礎知識點,幫助初學者快速掌握讀懂專案程式碼的能力。需要說明的是,文章篇幅有限,只能提供學習脈絡,無法面面俱到,進階主題仍需參考專業書籍深入鑽研。

為什麼需要資料型別?

電腦程式處理的資料千變萬化——文字、整數、浮點數等。每種程式語言都需一套完善機制來表示這些資料。某些語言(如 PHP、JavaScript)屬於弱型別語言,執行時期資料型別可動態改變;而 C# 是強型別語言,對不同資料型別有嚴格定義。資料型別分為基本型別與自訂型別(如類別),後者建立在前者基礎上。

基本資料型別詳解

整數型別

C# 提供 8 種整數型別,依位元數與正負號區分:

  • sbyte:有號 8 位元
  • byte:無號 8 位元
  • short:有號 16 位元
  • ushort:無號 16 位元
  • int:有號 32 位元(最常用)
  • uint:無號 32 位元
  • long:有號 64 位元
  • ulong:無號 64 位元

以 32 位元為例:有號 int 範圍為 -2,147,483,648 ~ 2,147,483,647;無號 uint 範圍為 0 ~ 4,294,967,295。最大/最小值絕對值不同,涉及補碼表示法,建議自行補充計算機組織原理知識。

浮點型別

  • float:32 位元單精度
  • double:64 位元雙精度

特殊的 decimal 型別佔 128 位元,專為金融計算設計,提供高精度且避免二進位浮點誤差。

布林型別

bool 僅有 true 與 false 兩種狀態,廣泛用於條件判斷。

字元與字串

  • char:單一 Unicode 字元
  • string:零或多個字元組成的有限序列

變數宣告與指派

擁有型別後,即可宣告變數:

string name;  // 宣告
name = "DouDou";  // 指派

string 為關鍵字(保留字),name 為自訂變數名稱。

值型別 vs 參考型別

C# 型別依記憶體儲存與複製行為分為兩大類:

值型別

包含所有基本型別(除 string 外)。變數直接儲存資料值,複製時建立獨立副本:

int a = 1;
int b = a;  // b 獲得獨立副本
b = 2;      // a 仍為 1,互不影響

參考型別

變數儲存記憶體位址,指向實際資料。string 是特殊的參考型別:

string c = "Doudou";
string d = c;  // 兩者指向同一記憶體位址

但字串具有不可變性:修改 d 時,實際是在記憶體建立新字串,d 指向新位址,c 仍指向原字串,表現類似值型別。

最簡單的完整 C# 程式

class HelloWorld
{
    static void Main()
    {
        System.Console.WriteLine("Hello World!");
    }
}

重點解析:

  • C# 為純物件導向,所有程式碼必須在類別內
  • Main 為程式進入點,必須為 static 靜態方法
  • System.Console.WriteLine 輸出一行文字到控制台

實作練習:字串參考行為驗證

class HelloWorld
{
    static void Main()
    {
        string a = "Doudou";
        string b = a;
        System.Console.WriteLine(a);  // Doudou
        System.Console.WriteLine(b);  // Doudou
        b = "Hi";
        System.Console.WriteLine(a);  // Doudou(未變)
        System.Console.WriteLine(b);  // Hi
    }
}

輸出結果證明字串不可變特性:修改 b 不影響 a。

命令列編譯與執行

  1. 將程式碼存為 HelloWorld.cs
  2. 開啟「VS 開發人員命令提示」
  3. 執行:cd /d d:\ → csc.exe HelloWorld.cs → HelloWorld.exe

C# 基礎概念圖 命令列編譯示範

陣列基礎

陣列為參考型別,儲存同型別資料集合:

string[] names;  // 宣告
names = new string[] { "aa", "bb", "cc" };  // 初始化
string name = names[2];  // 存取第 3 個元素(索引從 0 開始)

下一篇將介紹運算子、控制流程與方法。建議讀者廣泛查閱資料鞏固本篇內容。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved