4D v13.4データタイプ |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v13.4
データタイプ
|
データタイプ | フィールド | 変数 | 式 |
文字列 (*1) | ○ | ○ | ○ |
数値 (*2) | ○ | ○ | ○ |
日付 | ○ | ○ | ○ |
時間 | ○ | ○ | ○ |
ブール | ○ | ○ | ○ |
ピクチャ | ○ | ○ | ○ |
ポインタ | × | ○ | ○ |
BLOB (*3) | ○ | ○ | × |
配列 (*4) | × | ○ | × |
Integer 64 bits (*5) | ○ | × | × |
Float (*5) | ○ | × | × |
未定義 | × | ○ | ○ |
*1. 文字列には、文字フィールド、固定長変数、テキストフィールド、テキスト変数があります。
*2. 数値には、実数、整数、倍長整数のフィールドと変数があります。
*3. BLOBはBinary Large OBjectの省略形です。BLOBの詳細については、BLOBコマンドの章を参照してください。
*4. 配列にはすべてのタイプの配列が含まれます。詳細については、の章を参照してください。
*5. Integer 64 bitsとFloatタイプは、SQLによってのみ管理されます。4D言語でこれらを使用することは推奨されません。これを行うと、これらのデータタイプは実数に変換され、精度が失われることがあります。
文字列とは、以下を示す総称です:
文字列は、文字で構成されます。文字列の処理は、4DがUnicodeモードで実行されているか、非Unicodeモード (互換モード) で実行されているかにより変わります。このモードはアプリケーションの環境設定で設定されます。
Unicodeモード
非Unicode Mode (互換)
それぞれの文字は、WindowsまたはMac OSでサポートされる256個のASCII文字です。ASCIIコードに関する詳細は、の節を参照してください。
モードにかかわらず、文字列をテキストフィールドに代入したり、あるいはその逆を行ったりできます。4Dが変換を行い、必要に応じて切り捨てを行います。文字列とテキストは1つの式の中で混在させて使用できます。
注: このマニュアルでは、コマンド説明における文字列とテキストの引数は特に明記されていない限り、両方とも「文字列」と表記されています。
数値とは、以下を示す総称です。
実数データタイプの範囲は、±1.7e±308 (15桁) です。
整数データタイプ(2バイト整数)の範囲は、-32,768..32,767 (2^15..(2^15)-1)です。
倍長整数データタイプ(4バイト整数)の範囲は、-2^31..(2^31)-1です。
数値データタイプは、異なる数値データタイプに代入することができます。このとき、4Dが必要に応じて変換、切り捨て、丸め処理を行います。ただし、値が範囲外の場合には、変換は正しい値を返しません。数値データタイプは式の中に混在させて使用することができます。
注: このマニュアルでは、実際のデータタイプに関わらず、コマンド説明における実数、整数、倍長整数の引数は特に明記されていない限り、数値と表記されています。
注: このマニュアルでは、コマンド説明における日付引数は特に明記されていない限り、「日付」と表記されています。
注: このマニュアルでは、コマンド説明における時間引数は特に明記されていない限り、「時間」と表記されています。
ブールのフィールド、変数、式は、TRUE(真)またはFALSE(偽)のいずれかになります。
注: このマニュアルでは、コマンド説明におけるブール引数は特に明記されていない限り、「ブール」と表記されています。
ピクチャのフィールド、変数、式は、任意のWindowsまたはMacintoshのピクチャになります。一般的に、ペーストボード上に置いたり、4Dコマンドやプラグインコマンドを使用してディスクから読み出すことのできる任意のピクチャがこれに含まれます。
注: このマニュアルでは、コマンド説明におけるピクチャ引数は特に明記されていない限り、「ピクチャ」と表記されています。
ポインタの変数または式は、別の変数(配列、配列要素を含む)、テーブルまたはフィールドへの参照です。ポインタタイプのフィールドは、存在しません。
注: このマニュアルでは、コマンド説明におけるポインタ引数は特に明記されていない限り、「ポインタ」と表記されています。
BLOBのフィールドまたは変数は、個別にまたはBLOBコマンドを使用して利用できる一連のバイト列(長さは0バイトから2ギガバイトまで)です。BLOBタイプの式は、存在しません。
注: このマニュアルでは、コマンド説明におけるBLOB引数は特に明記されていない限り、「BLOB」と表記されています。
配列は、実際にはデータタイプではありません。さまざまな種類の配列(整数配列、テキスト配列等)はこの配列という名前の下にグループ化されています。配列は変数です。配列タイプのフィールドは存在せず、配列タイプの式も存在しません。配列の詳細については、の節を参照してください。
注: このマニュアルでは、コマンド説明における配列引数は特に明記されていない限り、「配列」と表記されています (例: 文字列配列や数値配列など)。
未定義は、実際にはデータタイプではありません。未定義は、まだ定義されていない変数を指しています。関数(結果を返すプロジェクトメソッド)は、メソッド内で、戻り値 ($0) に未定義式が代入されている場合、未定義値を返すことがあります。フィールドは、未定義にはできません。
4D言語には、データタイプ間の変換を行う演算子やコマンドがあります。4D言語はデータタイプをチェックしています。例えば、"abc"+0.5+!12/25/96!-?00:30:45?のように記述することはできません。これは、シンタックス(構文)エラーになります。
次の表は、基本的なデータタイプ、変換できるデータタイプ、それを実行する際に使用するコマンドを示しています:
データタイプ | 文字列に変換 | 数値に変換 | 日付に変換 | 時間に変換 |
文字列 | Num | Date | Time | |
数値 (*) | String | |||
日付 | String | |||
時間 | String | |||
ブール | Num |
注: この表に示すデータ変換の他に、演算子と他のコマンドを組み合せることで、より洗練されたデータ変換を実行することができます。
プロダクト: 4D
テーマ: プログラミング言語の構成要素
Type
ポインタ
メソッド
制御フロー
変数
定数
文字列
文字参照記号
演算子
識別子
配列