標題: C語言小結 [打印本頁]
作者: daming 時間: 2014-12-30 00:02
標題: C語言小結
一、結構
a)、結構定義
一般形式:
Struct 結構名
{
類型名 成員名;
};
Ex:
Struct student
{
Int number;
Char name[10];
Char sex;
Int age;
Char address[50];
Float score[3];
};
b)、結構變量的定義
1、先定義結構類型,再定義該類型數據。
Ex:
Struct 結構名
{
結構成員表
};
Struct 結構名 變量名列表;
2、在定義結構類型的時候,同時定義若干個此類型的變量。
Ex:
Struct 結構名
{
結構成員表
} 變量表;
3、不定義結構類型標識符(結構名),直接定義結構變量。
Ex:
Struct
{
結構成員表
} 變量表;
c)、結構類型變量成員的引用
引用結構變量x的成員有以下3種方法(p為結構指針變量,指向x):
1、x.成員名
2、(*p).成員名
3、p->成員名
d)、Attention
1、結構類型定義只是指定了一種類型,與int、float、char地位相同,無具 體 數據,系統不分配內存
2、結構成員可以是任何基本數據類型,也可以是指針等。
3、結構類型可以嵌套定義,但不能遞歸定義,即允許一個或多個成員類型 定 義為其他結構類型。
Ex:
Struct student
{
Int number;
Char name[10];
Struct data birthday; //birthday成員的類型為結構 data 類型
}
二、枚舉
a)、對枚舉元素按常量處理,不能對它們賦值。(注意區分枚舉元素和枚舉變 量)
Ex:
Enum weekday{sum ,mon, tue, wed, thu, fri, sat};
Sum=0; //sum是枚舉元素,算常量,不能被賦值
b)、枚舉變量具有默認值,它們依次為:0,1,2,3,。。。例如上例中sum的值 為0、mon為1.
c)、也可以在聲明的時候另行定義枚舉元素的值
Ex:
Enum weekday{sum=7 ,mon=1, tue, wed, thu, fri, sat};
d)、整數值不能直接賦給枚舉變量;如需將整數賦值給枚舉變量,應進行強 制類型轉換。
Ex:
Weekday day;
Day=(weekday)1;
e)、枚舉變量的取值范圍只能是枚舉元素
三、typedef聲明
語法形式: typedef 已有類型名 新類型名表;
其中,新類型名表可以有多個標識符,他們之間以逗號隔開。
Ex:
Typedef double area, volume;
Typedef int natural;
Natural i1, i2;
Area a;
Volume v;
四、宏定義
a)、"\"與一個較長占多行的宏
宏定義中允許包含兩行以上命令的情形,此時必須在最右邊加上"\"且該行"\"后不能再有任何字符,連注釋部分都不能有,下面的每行最后的一定要是"\","\"后面加一個空格都會報錯,更不能跟注釋。
Ex:
#define exchange(a,b) {\
int t;\
t=a;\
a=b;\
b=t;\
}
| 歡迎光臨 (http://m.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |