1

OCIAQDeq()のドキュメントには、次のように記載されています。

アプリケーションは、最初に OCIAQDeq() がコールされたときにペイロードに NULL を渡すことを選択し、OCI がペイロードにメモリーを割り当てられるようにすることができます。次に、OCIAQDeq() への後続のコールで、以前に割り当てられたメモリーへのポインタを使用できます。

この機能の使用方法の例はありますか? を渡した場合NULL、その後どこからポインタを取得しますか? ありがとう!

4

1 に答える 1

2

ドキュメントのこの部分payloadは、ダブルポインターである関数のパラメーターを参照しています。次にdvoid **よると

これは double ポインターであるため、割り当てられたバッファーは、渡されたパラメーターを介して呼び出し元に戻されます。たとえば、

dvoid* pBuffer = NULL;
OCIAQDec(..., &pBuffer, ...);

が渡されるためNULL、関数はバッファを割り当て、pBuffer後で再利用できる値に格納します。

于 2011-05-25T16:30:36.100 に答える