ブール型 (bool) は、C の新しい基本データ型です。 bool 型は標準の C 言語では定義されていません。bool 型を使用する必要がある場合、プログラマはマクロ定義を通じて bool 型をカスタマイズできます。
つまり、 int 型を bool 型として定義し、int 型の 0 と 1 の 2 つの値をそれぞれ bool 型の 2 つの値 true と false として定義します。
が指すメモリ空間のサイズを決定します。
ポインタ変数も変数の一種で、独自のメモリ空間を持ち、その空間に別の変数のメモリ空間が格納されます。
#2. カスタム データ型
配列型配列型は次のとおりです。一定の順序で同じ型の固定数の要素で構成されるデータ型。
1. 1 次元配列型
1) 定義
数据类型 数组名[元素个数] ;
2) 操作
## 添字を使用して要素にアクセスします。 添え字が範囲外かどうかに注意してください。 (プログラムの実行効率を確保するため、C では添え字の範囲外のチェックは行いません。範囲外でも実行できますが、結果は予測できません。) #●初期化
int a[10] = {1,2 ,3};//その他の要素は0に初期化されます
int a[] = {1,2,3};//要素の数要素は 3
2、二次元配列型
1) 定義
数据类型 数组名[常量表达式1][常量表达式2]
2) 初期化
int a[2][3] = {{1,2,3},{4,5,6}};
//等同于
int a[2][3] = {1,2,3,4,5,6};//二维数组可以转成一维数组进行处理,但是要注意下标
int a[][3] = {{1,2},{3,4,5}};//第一个下标可以省略,其他的不能,更高维的数组也同此。
行単位で格納!
構造データ タイプ
1. 構造構造とは、同じタイプまたは異なるタイプの一連のデータで構成されるデータ コレクションです。 。
定義:
struct 名称{
数据类型 变量名1;
数据类型 变量名2;
。。。。
数据类型 变量名n;
}结构体变量名;
2. 構造体配列:
struct Info{
int age;
char name[32];
}info[SIZE];
3. 構造体のネスト:
struct BookInfo{
char name[SIZE];
char author[SIZE];
int status;
};
struct ReadreInfo{
char Name[SIZE];
char Date[SIZE];
};
//结构体嵌套
struct LibraryInfo{
int ID;
struct BookInfo book;
struct ReadreInfo reader;
}LibraryInfo;
ユニオン型 共用体の使用は、構造体や通常の変数と似ています。
union 名称{
类型变量符 变量名;
......
类型变量符 变量名;
};
共用体の主な機能はメモリを節約することです。これは、共用体の変数は構造体のメンバー変数とは異なり、システムが各変数に対応するメモリを割り当てるためです。共用体では、すべてのメンバー変数がメモリ空間を共有します。このメモリ空間は、メンバ変数の中でバイト数が最も大きい変数が占有するメモリ空間であり、すべてのメンバ変数がこのメモリ空間を共有するため、共用体内のすべてのメンバ変数のアドレスは同じになります。
列挙型
列挙型 (列挙) は、C の派生データ型です。ユーザーがコレクションによって定義した列挙定数の数です。 。 変数に取り得る値が少数しかない場合は、列挙型として定義できます。いわゆる「列挙」とは、変数の値を 1 つずつ列挙することを指します。変数の値は、列挙された値の範囲内にのみ収まります。
列挙を作成するには、キーワード enum を使用する必要があります。列挙型の一般的な形式は次のとおりです。
enum 枚举名{
标识符[=整型常数],
标识符[=整型常数],
...
标识符[=整型常数]
} 枚举变量;
列挙型が初期化されていない場合、つまり「=整数定数」が省略されている場合は、最初の識別子から開始されます。
たとえば、次のコードは色の列挙を定義しており、変数 c の型は color です。最後に、c には値「blue」が割り当てられます。
enum color { red, green, blue } c;
c = blue;
デフォルトでは、最初の名前の値は 0、2 番目の名前の値は 1、3 番目の名前の値は 2 などとなります。ただし、初期値を追加して、名前に特別な値を割り当てることもできます。たとえば、以下の列挙では、緑の値は 5 です。
enum color { red, green=5, blue };
ここでは、デフォルトでは各名前がその前の名前より 1 大きいため、青の値は 6 ですが、赤の値は 0 のままです。