複雜的變數型別 列舉,結構,陣列

2021-04-09 08:22:44 字數 1353 閱讀 8990

1. 列舉(允許定義乙個型別,提取我們提供的限定值集合中的乙個值)

如:    orientation型別可以儲存north, south, east  或 west 中的乙個值.此時就可以使用列舉型別,建立自己的列舉型別orientation, 他可以從上述四個值中提取乙個值. 注意這是乙個附加的步驟----不是只宣告乙個給定型別的變數,而是宣告和描述乙個型別定義的型別,再宣告這個新型別的變數.

列舉使用乙個基本型別來儲存.列舉型別可以提取的每個值都儲存為該型別的乙個值,在預設情況下,該型別為int.

在預設宣告中新增型別,就可以指定其他基本型別:

enum typename : underlyingtype

value1,

value2,

valuen

列舉的基本型別可以是byte, sbyte, short, ushort, int , uint, long和 ulong .

在預設情況下,每個值都會根據定義的順序(從0開始),自動賦值對應的基本型別。可以重寫這個賦值過程:用=

運算子,並指定每個列舉的實際值。另外,還可以用乙個值作為另乙個列舉的基礎值,為多個列舉指定相同的值。

範例:using system;

2.  結構

結構是由幾個資料組成的資料結構.這些資料可能有不同的型別.

定義結構: 使用struct關鍵字定義

struct

using system;

struct route

class program

while ((mydirection <1)||(mydirection >4));

console .writeline ("input a distance:");

mydistance = convert.todouble (console.readline ());

myroute .direction = (orientation)mydirection ;

myroute.distance = mydistance;

console.writeline("myroute specifies a direction of and a" + "distance of ",myroute .direction ,myroute .distance );}}

}3,陣列

範例1 :

using system;

int i;

console.writeline("here are of myfriends:",friendname.length );

for (i = 0; i < friendname.length; i++)}}

}範例2:

using system;

變數的更多內容 複雜的變數型別 列舉

到目前為止,介紹的都是c 提供的簡單變數型別。還有3個略複雜 但非常有用 的變數,如下所示 列舉 結構 陣列今天主講列舉,每種型別 除了string外 都有明確的取值範圍。誠然,有些型別 如double 的取值範圍非常大,可以看作是連續的,但其中的數值總是固定的。最簡單的示例是bool型別,它只有t...

C語言 結構體 列舉型別 變數型別

一 結構體 多個相同型別的資料構成的集合叫做陣列,多個不同型別的資料構成的集合叫做結構體。結構體型別的作用域 定義在函式外面 全域性有效 從定義型別的那行開始,一直到檔案結尾 定義在函式 塊 內部 區域性有效 從定義型別的那行開始,一直到 塊結束 1 結構體的定義 struct是關鍵字,是結構體型別...

c 列舉 結構型別全域性變數

列舉 enum 列舉型別名字 enumcolor void f enumcolor c 列舉中的套路 enum color 聲名列舉量的時候可以指定值 聲名結構型別時記得加 結構和陣列有點像,陣列用運算子和下標訪問其成員,a 0 10 p1 struct point 相當於 p1 x 5 p1 y ...