问题描述
|
在OCIAQDeq()的文档中指出:
应用程序可以选择通过
第一次为NULL
调用OCIAQDeq(),并让OCI
为有效负载分配内存。
然后可以使用一个指向
先前分配的内存
随后对OCIAQDeq()的调用。
有没有人有使用此功能的示例?如果我传入
NULL
,那么我随后从哪里得到指针?谢谢!
解决方法
此文档文档引用函数的
payload
参数,它是一个双指针:dvoid **
根据以下内容
http://files.edin.dk/php/win32/dev/php_build/include/oci805/OCIAP.H
由于它是双指针,因此分配的缓冲区将通过传入的参数传递回调用方。例如
dvoid* pBuffer = NULL;
OCIAQDec(...,&pBuffer,...);
因为传递了“ 0”,该函数将分配一个缓冲区并将其存储到“ 5”值中,以后可以重复使用