プリミティブ データ型の変換

Curl 言語のプリミティブ データ型のそれぞれのペアにおける変換を示す表を以下に掲載します。それぞれの表には次の項目があります。

int からの変換

変換前変換後暗黙的明示的注意および制限
intint8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
intint16型縮小NYデータ損失の可能性 (int16 の範囲が原因)。
intint32-YY-
intint64型拡張YY-
intuint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。負の値は変換できません。
intuint16型縮小NY負の値は変換できません。
intuintその他NY負の値は変換できません。
intuint64その他NY負の値は変換できません。
intfloat型拡張YYデータ損失の可能性 (float の内部表現が原因)。
intdouble型拡張YY-
intcharその他NY正当な char の値は、[0-0xD7FF][0xE000-0x10FFFF]です。この範囲外の値はエラーの原因となります。
intany型拡張YY-

int8 からの変換

変換前変換後暗黙的明示的注意および制限
int8int型拡張YY-
int8int16型拡張YY-
int8int32型拡張YY-
int8int64型拡張YY-
int8uint8型縮小NY負の値は変換できません。
int8uint16型縮小NY負の値は変換できません。
int8uintその他NY負の値は変換できません。
int8uint64その他NY負の値は変換できません。
int8float型拡張YY-
int8double型拡張YY-
int8charその他NY負の値はエラーの原因となります。
int8any型拡張YY-

int16 からの変換

変換前変換後暗黙的明示的注意および制限
int16int型拡張YY-
int16int8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
int16int32型拡張YY-
int16int64型拡張YY-
int16uint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。負の値は変換できません。
int16uint16型縮小NY負の値は変換できません。
int16uintその他NY負の値は変換できません。
int16uint64その他NY負の値は変換できません。
int16float型拡張YY-
int16double型拡張YY-
int16charその他NY負の値はエラーの原因となります。
int16any型拡張YY-

int32 からの変換

変換前変換後暗黙的明示的注意および制限
int32int-YY-
int32int8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
int32int16型縮小NYデータ損失の可能性 (int16 の範囲が原因)。
int32int64型拡張YY-
int32uint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。負の値は変換できません。
int32uint16型縮小NYデータ損失の可能性 (uint16 の範囲が原因)。負の値は変換できません。
int32uintその他NY負の値は変換できません。
int32uint64その他NY負の値は変換できません。
int32float型拡張NYデータ損失の可能性 (float の内部表現が原因)
int32double型拡張NY-
int32charその他NY正当な char の値は、[0-0xD7FF][0xE000-0x10FFFF]です。この範囲外の値はエラーの原因となります。
int32any型拡張YY-

int64 からの変換

変換前変換後暗黙的明示的注意および制限
int64int型縮小NY-
int64int8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
int64int16型縮小NYデータ損失の可能性 (int16 の範囲が原因)。
int64int32型縮小NY-
int64uint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。負の値は変換できません。
int64uint16型縮小NYデータ損失の可能性 (uint16 の範囲が原因)。負の値は変換できません。
int64uintその他NYデータ損失の可能性 (uint の範囲が原因)。負の値は変換できません。
int64uint64その他NY負の値は変換できません。
int64float型拡張NYデータ損失の可能性 (float の内部表現が原因)。
int64double型拡張NYデータ損失の可能性 (double の内部表現が原因)。
int64charその他NY正当な char の値は、[0-0xD7FF][0xE000-0x10FFFF]です。この範囲外の値はエラーの原因となります。
int64any型拡張YY-

uint8 からの変換

変換前変換後暗黙的明示的注意および制限
uint8int型拡張YY-
uint8int8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
uint8int16型拡張YY-
uint8int32型拡張YY-
uint8int64型拡張YY-
uint8uint16型拡張YY-
uint8uint型拡張YY-
uint8uint64型拡張YY-
uint8float型拡張YY-
uint8double型拡張YY-
uint8charその他YY-
uint8any型拡張YY-

uint16 からの変換

変換前変換後暗黙的明示的注意および制限
uint16int型拡張YY-
uint16int8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
uint16int16型縮小NYデータ損失の可能性 (int16 の範囲が原因)。
uint16int32型拡張YY-
uint16int64型拡張YY-
uint16uint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。
uint16uint型拡張YY-
uint16uint64型拡張YY-
uint16float型拡張YY-
uint16double型拡張YY-
uint16charその他YY正当な char の値は、[0-0xD7FF][0xE000-0x10FFFF]です。この範囲外の値はエラーの原因となります。
uint16any型拡張YY-

uint からの変換

変換前変換後暗黙的明示的注意及び制限
uintintその他NY大きな uint 型の値は int 型の負の値へ変換されます。
uintint8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
uintint16型縮小NYデータ損失の可能性 (int16 の範囲が原因)。
uintint32その他NY大きな uint 型の値は int 型の負の値へ変換されます。
uintint64型拡張YY-
uintuint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。
uintuint16型縮小NYデータ損失の可能性 (uint16 の範囲が原因)。
uintuint64型拡張YY-
uintfloat型拡張YY-
uintdouble型拡張YY-
uintcharその他NY[0xD800-0xDFFF] の範囲内の値は正当な char の値ではなく、エラーを引き起こす可能性があります。
uintany型拡張YY-

uint64 からの変換

変換前変換後暗黙的明示的注意及び制限
uint64int型縮小NYデータ損失の可能性 (int の範囲が原因)。
uint64int8型縮小NYデータ損失の可能性 (int8 の範囲が原因)。
uint64int16型縮小NYデータ損失の可能性 (int16 の範囲が原因)。
uint64int32型縮小NYデータ損失の可能性 (int の範囲が原因)。
uint64int64その他NY大きな uint64 型の値は int64 型の負の値へ変換されます。
uint64uint8型縮小NYデータ損失の可能性 (uint8 の範囲が原因)。
uint64uint16型縮小NYデータ損失の可能性 (uint16 の範囲が原因)。
uint64uint型縮小NYデータ損失の可能性 (uint の範囲が原因)。
uint64float型拡張YY-
uint64double型拡張YY-
uint64charその他NY[0xD800-0xDFFF] の範囲内の値は正当な char の値ではなく、エラーを引き起こす可能性があります。
uint64any型拡張YY-

float からの変換

変換前変換後暗黙的明示的注意および制限
floatint型縮小NYデータ損失の可能性 (int の範囲および小数部分の損失が原因)。
floatint8型縮小NYデータ損失の可能性 (int8 の範囲および小数部分の損失が原因)。
floatint16型縮小NYデータ損失の可能性 (int16 の範囲および小数部分の損失が原因)。
floatint32型縮小NYデータ損失の可能性 (int32 の範囲および小数部分の損失が原因)。
floatint64型縮小NYデータ損失の可能性 (int64 の範囲および小数部分の損失が原因)。
floatuint8型縮小NYデータ損失の可能性 (uint8 の範囲および小数部分の損失が原因)。負の値は変換できません。
floatuint16型縮小NYデータ損失の可能性 (uint16 の範囲および小数部分の損失が原因)。負の値は変換できません。
floatuint型縮小NYデータ損失の可能性 (uint の範囲が原因。また小数部分を失う可能性があります)。負の値は変換できません。
floatuint64型縮小NYデータ損失の可能性 (uint64の範囲が原因。また小数部分を失う可能性があります)。負の値は変換できません。
floatdouble型拡張YY-
floatcharその他NY正当な char の値は、[0-0xD7FF][0xE000-0x10FFFF]です。この範囲外の値はエラーの原因となります。
floatany型拡張YY-

double からの変換

変換前変換後暗黙的明示的注意および制限
doubleint型縮小NYデータ損失の可能性 (int の範囲および小数部分の損失が原因)。
doubleint8型縮小NYデータ損失の可能性 (int8 の範囲および小数部分の損失が原因)。
doubleint16型縮小NYデータ損失の可能性 (int16 の範囲および小数部分の損失が原因)。
doubleint32型縮小NYデータ損失の可能性 (int32 の範囲および小数部分の損失が原因)。
doubleint64型縮小NYデータ損失の可能性 (int64 の範囲および小数部分の損失が原因)。
doubleuint8型縮小NYデータ損失の可能性 (uint8 の範囲および小数部分の損失が原因)。負の値は変換できません。
doubleuint16型縮小NYデータ損失の可能性 (uint16 の範囲および小数部分の損失が原因)。負の値は変換できません。
doubleuint型縮小NYデータ損失の可能性 (uint の範囲が原因。また小数部分を失う可能性があります)。負の値は変換できません。
doubleuint64型縮小NYデータ損失の可能性 (uint64 の範囲が原因。また小数部分を失う可能性があります)。負の値は変換できません。
doublefloat型縮小NYデータ損失の可能性 (float の範囲が原因)。
doublecharその他NY正当な char の値は、[0-0xD7FF][0xE000-0x10FFFF]です。この範囲外の値はエラーの原因となります。
doubleany型拡張YY-

char からの変換

変換前変換後暗黙的明示的注意および制限
charintその他YY-
charint8その他NYデータ損失の可能性 (int8 の範囲が原因)。
charint16その他NYデータ損失の可能性 (int16 の範囲が原因)。
charint32その他YY-
charint64その他YY-
charuintその他NYデータ損失の可能性 (uint の範囲が原因)。
charuint8その他NYデータ損失の可能性 (uint8 の範囲が原因)。
charuint16その他NYデータ損失の可能性 (uint16 の範囲が原因)。
charuint64その他NYデータ損失の可能性 (uint64 の範囲が原因)。
charfloatその他YY-
chardoubleその他YY-
charanyその他YY-

any からの変換

変換前変換後暗黙的明示的注意および制限
anyint型縮小YY変数が互換性を持つ値である場合のみ可能。
anyint8型縮小YY変数が互換性を持つ値である場合のみ可能。
anyint16型縮小YY変数が互換性を持つ値である場合のみ可能。
anyint32型縮小YY変数が互換性を持つ値である場合のみ可能。
anyint64型縮小YY変数が互換性を持つ値である場合のみ可能。
anyuint8型縮小YY変数が互換性を持つ値である場合のみ可能。
anyuint16型縮小YY変数が互換性を持つ値である場合のみ可能。
anyuint型縮小YY変数が互換性を持つ値である場合のみ可能。
anyuint64型縮小YY変数が互換性を持つ値である場合のみ可能。
anyfloat型縮小YY変数が互換性を持つ値である場合のみ可能。
anydouble型縮小YY変数が互換性を持つ値である場合のみ可能。
anycharその他YY変数が互換性を持つ値である場合のみ可能。