[]構造体構造
型定義:同じデータ型と異なるデータタイプのデータを有するデータの系列を構成設定します。
型定義のフォーマット:
構造体ワーカー
{
文字名[10]。
int型の年齢;
フロート給与;
次のstructワーカー*;
}。
[警告]:割り当てられた記憶空間の各部材を順次記載され、そのメンバ変数に割り当てられたメモリの合計の構造。
[警告]:+1アドレスポインタ変数構造のこのメモリ空間の構造に依存して
初期化:構造体ワーカーhanmeimei = {「hanmeimei 」、25,100};
ポインタ構造:構造体ワーカー男; workerMan構造体= *&ワーカーマン、開始位置と構造型構造体ポインタ。
アクセスメンバー:構造体変数のメンバ名、製品構造の可変ポインタ- >メンバ名(*構造体ポインタ変数)メンバー名。
構造配列:構造体ワーカー研究者[20である];研究者[0] = {「Hanmeimei」 、15,80};研究者[0] .age、
構造ポインタ型パラメータ:引数は、構造または構造のポインタ変数自体可変パラメータは、構造体のポインタ型変数の同じタイプであるが、基本的なデータは、戻り値であってもよいですタイプは、構造のタイプにすることができます。構造は、C ++の関数で定義することができます。
[連合]連邦
型定義:変数のいくつかの異なるタイプで構成同じアドレスに格納されているの始まりメモリ空間の部分の内側。労働組合と呼ばれます。
型定義フォーマット:労働組合の組合名{char型の名前[20]; int型の年齢; float型の給与};
型変数の定義:の直接的および間接的な定義の定義は、
メモリ空間を占有する別の方法:[]構造とは異なります。各メンバーは、構造別の空間を有し、メモリ空間は、構造部材のサイズとメモリのサイズと等しい、組合員は、同一アドレス開口共有
Aにおいて、各部材の長さの合計の最大長さに応じて、開始メモリ空間を現時点では唯一の各メンバーのデータを保存することができます。いずれかの瞬間の有効、無効の他のメンバーの唯一のメンバー。
【アクセス】このメンバー
連邦メンバ変数名の、連邦ポインタ変数- >メンバ名;.
[警告:変数の連邦で、新しいメンバーが割り当てられた場合、重複アドレスメモリセグメントの元メンバーが覆われています、また、洗い流さ。連合型構造は、ネストされた型定義することができます。
連邦変数は、パラメータとして機能することはできません。コンパイル時にパラメータの型の構文チェックを決定するために、その変数のアドレスコンソーシアムのメンバーが行うのと同じアドレス、パラメータの種類を判別することはできません。しかし、ポイントコンソーシアム変数連合型のポインタ型変数はポインタ変数を返すことがあり数、種類組合機能の関数として採用することができます。
処置:連邦それがアクセス可能であるため、多くの場合、データフェデレーション方法の2人の以上のメンバーで、データ型の変換に使用するには、チャンバを含みます。したがってソフトウェアシステムの調製において、異なるタイプのデータを処理する、または異なるバイト(8または16)は、運転中にしばしばコンソーシアム的に参加が必要です。
[]列挙型列挙
定義:プラスチック定数名のコレクション。デフォルトは、最初は0
フォーマット定義:列挙{列挙要素列挙名1 [= 1]、2列挙体[= 2]};カンマで要素、コンマなしの後ろに最後の要素。
[警告]:各要素は整数値です。割り当てコンパイラの論理積をとる李順0,1,2,3を定義する際に何の割り当てがない場合は、左フロントの参照要素は、それが割り当てられている場合は、コピーし始めた...その値は、列挙は、一定とみなされ、列挙型の定義に加えて、彼らはそれを価値を割り当てることができません。各列挙要素の定義では一意でなければなりませんが、また、プログラムのどこかにある識別子が列挙のユニークな要素でなければなりません。m_enum列挙 { M_A、 // 0 M_B、 // 1 M_C = 10、 // 10 M_Dによって // = 11前+1に基づいて
}。
[] typedefで定義された型
のtypedef既存のデータは新しいデータ型の名前を入力します
typedef int配列[10];配列要素10を成形する配列型を示した後でも