浮動小数点数または文字列を、2進法コピーを使って整数値変数に変換します。
構文:
用法:
result = Cvi( sng )
result = Cvi( str )
result = Cvi<bits>( expr )
パラメタ:
f
str
bits
返す整数型の、サイズを指定します。
受け入れられる expr の型とサイズは、呼ばれる、対応する関数に依存します。
expr
戻り値:
記述:
Single か
String に含まれている 2進法のデータを使って、整数(
Integer)値を返します。
文字列が、戻り型のサイズより少ない文字数を含んでいる場合、ゼロ (
0) の値が返されます。
Cvi は、
Mki で作られた文字列を変換するのに使われます。
この関数は、
Integer -サイズの値を、
Type 構造体を必要とせずに、メモリまたはファイルバッファから変換するために使うことができます。
ただし、型構造と同様に、バッファから読み込まれた文字列を、
Cvi を使って変換するときには、特別な注意が必要です。
Cvi は、引数の前に、オプションで
<bits> パラメータを付けることができます。
bits が
16 の場合、代わりに
Cvshort が呼び出されます。
bits が
32 の場合、
Cvl が呼び出されます。
bits が
64 の場合、
Cvlongint が呼び出されます。
戻り値の型と受け入れられる引数の型は、呼び出される関数によって異なります。
詳細については、各関数のページを参照してください。
Cvi の動作は、現在のプラットフォーム上の
Integer データ型のサイズに応じて、変化します。
例:
Dim i As Integer, s As String
s = "ABCD"
i = CVI(s)
Print Using "s = ""&"""; s
Print Using "i = _&H&"; Hex(i)
方言差:
-
-lang qb 方言では、QB の整数は16ビットなので、Cvi は、2バイトの文字列になります。
文字列が、たとえ 2バイトより長くても、文字列の最初の2バイトだけが、使われます。
-
-lang qb 方言では、QB の整数はわずか16ビットで、16ビット浮動小数点データ型はないので、Cvi は、浮動小数点の引数をとりません。
代わりに、Cvi<32> か Cvi<64> か Cvl/Cvlongint が使われます。
QBからの違い:
- QBでは、渡された文字列の長さが2バイト未満であれば、エラーになります。
- QB は、浮動小数点引数をサポートしませんでした。
- QB は、<bits> パラメータをサポートしませんでした。
参照: