自由なストレージから、ある要素のための一定のメモリを割り当てて、内容をクリアします。
構文:
用法:
result = Callocate
( num_elements [, size ] )
パラメタ:
num_elements
メモリを割り当てる、要素の数。
size
それぞれの要素の、バイトで表現されるサイズ。
戻り値:
うまくいくと、割り当てられたメモリの開始アドレスを返します。
そうでないときは、ヌルポインタ (0) を返します。
記述:
Callocate は、割り当てられたメモリを、ゼロで初期化します。
したがって、
Callocate は、文字列記述子が最初に消去(0 に設定)されるため、文字列を含む
String や
UDT で、直接使うこともできます。
同様に、文字列データはヌル文字で作成されるため、
Callocate は、
Zstring や
Wstring で直接使うこともできます。
例:
' 10の整数要素のために、スペースを割り当てて、初期化します。
Dim p As Integer Ptr = CAllocate
(10, SizeOf(Integer))
' 整数値でメモリを満たします。
For index As Integer = 0 To 9
p[index] = (index + 1) * 10
Next
' 整数値を表示します。
For index As Integer = 0 To 9
Print p[index] ;
Next
' メモリを解放します。
Deallocate(p)
Sleep
出力:
10 20 30 40 50 60 70 80 90 100
例2:
出力:
方言差:
-
-lang qb 方言では、別名__Callocateと共に参照をつけないと、利用できません。
QBからの違い:
参照: