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

C# 三種複雜變數型別詳解

     編輯:關於C語言

前面介紹變數都有基本取值範圍,除了 String 型別外,每種變數在記憶體只佔固定位元組。下面介紹 3 種使用者自訂複雜變數。

一、 列舉型別

定義列舉型別:關鍵字 enum

使用方法:

enum Ename
{
    Value1, value2, …………. valueN
}

宣告一個 Ename 型別列舉變數 Ename myenum = Ename.value;。預設列舉型別底層為 int,value1、value2 等值預設從 0 依次遞增 1。也可使用其他型別。範例:

enum Days
{
    Monday = 1,
    Tuesday = 2,
    Wednesday = 3,
    Thursday = 4,
    Friday = 5,
    Saturday = 6,
    Sunday = 7
}

enum Days : short { }

使用:
Days myday = Days.Friday;
Console.WriteLine("myday is {0} :", myday);

輸出結果如圖:

定義 enum 位置:

列舉底層型別可為 byte、sbyte、long、short、ushort、int、uint、ulong。

二、 結構體

結構體定義與使用方法與列舉類似,差別在結構體中所有定義變數都可有自己的值,而列舉變數值只能是列舉所有值其中之一。範例:

struct Cloth // 結構體名稱
{
    public int age;       // 衣服使用壽命
    public string sex;    // 適合性別
    public string style;  // 款式
    public double price;  // 價格
    public double count;  // 折扣
}

Cloth mycloth;
mycloth.age = 2;
mycloth.count = 0.98;
mycloth.price = 999.99;
mycloth.sex = "man";
mycloth.style = "長褲";

Console.WriteLine("結構體資料輸出:");
Console.WriteLine("age={0}, sex={1}, style={2}, price={3}, count={4}", mycloth.age, mycloth.sex, mycloth.style, mycloth.price, mycloth.count);

結果:

三、 陣列

陣列用來儲存大量型別相同但數值不同資料。例如班級同學資訊中,用字串陣列保存所有同學姓名。

string[] StuNames = new string[5];
StuNames[0] = "國家";
StuNames[1] = "人們";
StuNames[2] = "中國";
StuNames[3] = "漢族";
StuNames[4] = "主席";

foreach (string sName in StuNames)
    Console.WriteLine(sName);

輸出結果:

陣列使用包含宣告與初始化。定義陣列時長度為常數,不能用變數表示:如 int[] score = new int[7];int[] score = new int[const Size];或 int[] EnglishScore = { 1, 5, 6, 8, 5, 7, 74 }。陣列存取前必須初始化,若只定義未初始化會出錯。

多維陣列:可依需求定義不同維度,一維、二維較常用,三維以上罕見。例:定義二維陣列表示某班 30 人三門課程成績,double[,] stuScore = new double[30, 3],則 stuScore[1, 2] 表示第 2 位學生第 3 門課程成績。請親自編程體會。

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