1、結構宣告和變數宣告
struct name{};
struct name val;
列:宣告變數
struct book library;
簡化宣告變數
struct book library;
初始化結構體
struct book library = ;
指定初始化器
struct book surprise = ;
2、聯合(union)是一種資料型別,它能在同乙個記憶體空間中儲存不同的
資料型別(不是同時儲存)。其典型的用法是,設計一種表以儲存既無規
律、事先也不知道順序的混合型別。
union hold ;
上面聯合儲存乙個int型別的值或乙個double型別的
值或char型別的值
3、可以用列舉型別(enumerated type)宣告符號名稱來表示整型常量。使
用enum關鍵字,可以建立乙個新"型別"並指定它可具有的值(實際上,enum
常量是int型別,因此,只要能使用int型別的地方就可以使用列舉型別)。
宣告列舉
enum spectrum ;
enum spectrum color;
因此,color可能的值是red、orange、yellow等。
這些符號常量被稱為列舉符(enumerator)。然後,便可這樣用:
int c;
color = blue;
if (color == yellow)
...;
for (color = red; color <= violet; color++)
在列舉宣告中,可以為列舉常量指定整數值:
enum levels ;
4、typedef工具是乙個高階資料特性,利用typedef可以為某一型別自定義名
稱。typedef
unsigned
char byte;
隨後,便可使用byte來定義變數:
byte x, y[10], * z;
還可以把typedef用於結構:
typedef
struct
complex complex;
然後便可使用complex型別代替complex結構來表示複數。使用typedef
的第1個原因是:為經常出現的型別建立乙個方便、易識別的型別名
用typedef來命名乙個結構型別時,可以省略該結構的標籤:
typedef
struct rect;
假設這樣使用typedef定義的型別名:
rect r1 = ;
rect r2;
以上**將被翻譯成:
struct r1= ;
5、函式指標
void toupper(char *);// 把字串中的字元轉換成大寫字元
void (*pf)(char *);// pf 是乙個指向函式的指標
pf = toupper;//有效,toupper是該型別函式的位址
列:void toupper(char *);
void tolower(char *);
void (*pf)(char *);
char mis = "nina metier";
pf = toupper;
(*pf)(mis);//把toupper 作用於(語法1)
pf = tolower;
pf(mis);//把tolower 作用於(語法2)
函式做為引數
void show(void (* fp)(char *), char * str);
show(tolower, mis);//show()使用tolower()函式:fp = tolower
show(pf, mis);//show()使用pf指向的函式: fp = pf
void show(void (* fp)(char *), char * str)
其他資料型別
資料型別 作用 sql variant 用於儲存各種資料型別 timestamp 用於反應資料庫中資料修改的相對順序 uniqueidentifier 用於儲存乙個16位元組長的二進位制資料 xml 用於儲存整個xml文件 table 用於儲存對錶或者檢視查詢的結果集 cursor 用於對記者進行逐...
String 和其他資料型別的轉換
將其它基本資料型別轉換為string 型別 一 由基本資料型態轉換成string string 類別中已經提供了將基本資料型態轉換成 string 的static 方法,也就是string.valueof 這個引數多載的方法 有以下幾種 1 string.valueof boolean b 將boo...
c基礎 資料型別 結構和聯合
聚合資料型別能夠同時儲存超過乙個的單獨資料。c提供了兩種聚合資料型別 陣列和結構 陣列是相同型別的元素的集合,它的每個元素是通過下標引用或指標間接訪問來選擇的。結構可以儲存不同的型別值,這些值為它的成員,成員是通過名字訪問的。結構宣告 eg.1 struct struct x,y 20 z eg.2...