Objective-Cのデータ型
Objective-Cプログラミング言語では、データ型は、さまざまな型の変数または関数を宣言するために使用される広範なシステムを指します。変数のタイプによって、ストレージ内で占有するスペースの量と、格納されているビットパターンがどのように解釈されるかが決まります。
Objective-Cのタイプは次のように分類できます-
シニア番号 | タイプと説明 |
---|---|
1 | Basic Types − これらは算術型であり、(a)整数型と(b)浮動小数点型の2つの型で構成されます。 |
2 | Enumerated types − これらも算術型であり、プログラム全体で特定の離散整数値のみを割り当てることができる変数を定義するために使用されます。 |
3 | The type void − 型指定子voidは、使用可能な値がないことを示します。 |
4 | Derived types − それらには、(a)ポインター型、(b)配列型、(c)構造体型、(d)共用体型、および(e)関数型が含まれます。 |
配列タイプと構造タイプは、まとめて集約タイプと呼ばれます。関数の型は、関数の戻り値の型を指定します。次のセクションで基本的なタイプを確認しますが、他のタイプについては次の章で説明します。
整数型
次の表に、標準の整数型とそのストレージサイズおよび値の範囲の詳細を示します。
タイプ | ストレージサイズ | 値の範囲 |
---|---|---|
char | 1バイト | -128〜127または0〜255 |
unsigned char | 1バイト | 0から255 |
符号付き文字 | 1バイト | -128〜127 |
int | 2または4バイト | -32,768〜32,767または-2,147,483,648〜2,147,483,647 |
unsigned int | 2または4バイト | 0〜65,535または0〜4,294,967,295 |
ショート | 2バイト | -32,768〜32,767 |
unsigned short | 2バイト | 0〜65,535 |
長いです | 4バイト | -2,147,483,648から2,147,483,647 |
unsigned long | 4バイト | 0から4,294,967,295 |
特定のプラットフォームで型または変数の正確なサイズを取得するには、 sizeofオペレーター。式sizeof(type)は、オブジェクトまたはタイプのストレージサイズをバイト単位で生成します。以下は、任意のマシンでint型のサイズを取得する例です-
#import <Foundation/Foundation.h>
int main() {
NSLog(@"Storage size for int : %d \n", sizeof(int));
return 0;
}
上記のプログラムをコンパイルして実行すると、Linuxで次の結果が生成されます-
2013-09-07 22:21:39.155 demo[1340] Storage size for int : 4
浮動小数点型
次の表に、ストレージサイズと値の範囲、およびそれらの精度を備えた標準の浮動小数点型の詳細を示します。
タイプ | ストレージサイズ | 値の範囲 | 精度 |
---|---|---|---|
浮く | 4バイト | 1.2E-38から3.4E + 38 | 小数点以下6桁 |
ダブル | 8バイト | 2.3E-308から1.7E + 308 | 小数点以下15桁 |
ロングダブル | 10バイト | 3.4E-4932から1.1E + 4932 | 小数点以下19桁 |
ヘッダーファイルfloat.hは、これらの値や、プログラムでの実数の2進表現に関するその他の詳細を使用できるようにするマクロを定義します。次の例では、floatタイプが使用するストレージスペースとその範囲値を出力します-
#import <Foundation/Foundation.h>
int main() {
NSLog(@"Storage size for float : %d \n", sizeof(float));
return 0;
}
上記のプログラムをコンパイルして実行すると、Linuxで次の結果が生成されます-
2013-09-07 22:22:21.729 demo[3927] Storage size for float : 4
ボイドタイプ
voidタイプは、使用可能な値がないことを指定します。3種類の状況で使用されます-
シニア番号 | タイプと説明 |
---|---|
1 | Function returns as void Objective-Cには、値を返さない、またはvoidを返すと言うことができるさまざまな関数があります。戻り値のない関数の戻り値の型はvoidです。例えば、void exit (int status); |
2 | Function arguments as void Objective-Cには、パラメータを受け入れないさまざまな関数があります。パラメータのない関数は、voidとして受け入れることができます。例えば、int rand(void); |
現時点ではvoid型が理解できない可能性があるため、先に進みましょう。これらの概念については、次の章で説明します。