|
|
Fmove、Fmove32(3fml)
名前
Fmove()、Fmove32() - フィールド化バッファを宛先バッファに移動
形式
#include <stdio.h>
#include "fml.h"
int
Fmove(char *dest, FBFR *src)
#include "fml32.h"
int
Fmove32(char *dest, FBFR32 *src)
機能説明
Fmove() は、フィールド化バッファから任意の型のバッファに複写するときに使用されます。dest は、宛先バッファを指すポインタです。src は、もとのフィールド化バッファを指すポインタです。
Fmove() と Fcpy() の違いとして、Fcpy() は、宛先バッファをフィールド化バッファにする点です。これにより、フィールド化バッファが、元のバッファからのデータを入れるために十分な大きさになります。Fmove() は、このような検査は行いません。何の検査もせずに、ソース・フィールド化バッファの Fsizeof() バイトのデータを目的のバッファに移動します。宛先バッファは、short バウンダリで並んでいる必要があります。
FLD_PTR 型の値の場合、Fmove32() はバッファ・ポインタを渡します。アプリケーション・プログラマは、対応するポインタが移動されるバッファの再割り当て、および解放を管理する必要があります。
Fmove32() は 32 ビット FML で使用されます。
マルチスレッドのアプリケーション内のスレッドは、TPINVALIDCONTEXT を含め、どのようなコンテキスト状態で実行している場合でも、Fmove() または Fmove32() を呼び出すことができます。
戻り値
この関数は、エラー発生時に -1 を返し、Ferror を設定してエラー条件を示します。
エラー
次の条件の場合、Fmove() は異常終了し、Ferror を次の値に設定します。
ソース・バッファあるいは宛先バッファは、適切なバウンダリで開始していません。
ソース・バッファがフィールド化バッファでないか、あるいは Finit() によって初期化されていません。
関連項目
「FML 関数の紹介」、Fcpy、Fcpy32(3fml)、Fsizeof、Fsizeof32(3fml)
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|