回覆列表
-
1 # 用戶5592868133291
-
2 # 恆信電器666
在C語言中,結構體(struct)指的是一種數據結構,是C語言中聚合數據類型(aggregate
data
type)的一類。結構體可以被聲明為變量、指針或數組等,用以實現較複雜的數據結構。結構體同時也是一些元素的集合,這些元素稱為結構體的成員(member),且這些成員可以為不同的類型,成員一般用名字訪問。
在C語言中,定義一個結構的一般形式為:
struct結構名
{
//成員表列
};
成員表由若干個成員組成, 每個成員都是該結構的一個組成部分。對每個成員也必須作類型說明,其形式為:“類型說明符 成員名;”。成員名的命名應符合標識符的書寫規定。例如:
struct stu
{
int num;
char name[20];
char sex;
float score;
};
在這個結構定義中,結構名為stu,該結構由4個成員組成。 第一個成員為num,整型變量;第二個成員為name,字符型數組;第三個成員為sex,字符型變量;第四個成員為score,浮點型變量。 應注意在括號後的分號是必不可少的。
然後,當結構定義完成後,即創建了一種數據類型,可以像int、float等內置類型一樣使用,以上面定義的stu結構體來和int類型對比著看。
int a;//定義一個int類型的變量a
stu a; //定義一個stu類型的變量a
int *p; //定義一個int類型的指針p
stu *p; //定義一個stu類型的指針p
int a[10];//定義一個int類型的數組a,它有10個元素,每個元素是int類型
stu a[10];//定義一個stu類型的數組a,它有10個元素,每個元素是stu類型。
C++提供了許多種基本的數據類型(如int、float、double、char等)供用戶使用。但是由於程序需要處理的問題往往比較複雜,而且呈多樣化,已有的數據類型顯得不能滿足使用要求。
因此C++允許用戶根據需要自己聲明一些類型,用戶可以自己聲明的類型還有結構體類型(structure)、共用體類型(union)、枚舉類型(enumeration)、類類型(class )等,這些統稱為用戶自定義類型(user-defined type,UDT)。