Using the XSQLDA_LENGTH Macro
From InterBase
Go Up to Understanding the XSQLDA
The ibase.h
header file defines a macro, XSQLDA_LENGTH
, to calculate the number of bytes that must be allocated for an input or output XSQLDA
. XSQLDA_LENGTH
is defined as follows:
#define XSQLDA_LENGTH (n) (sizeof (XSQLDA) + (n – 1) * sizeof(XSQLVAR))
<n> is the number of parameters in a statement string, or the number of select-list items returned from a query. For example, the following C statement uses the XSQLDA_LENGTH
macro to specify how much memory to allocate for an XSQLDA
with 5 parameters or return items:
XSQLDA *my_xsqlda;
. . .
my_xsqlda = (XSQLDA *)malloc(XSQLDA_LENGTH(5));
. . .
For more information about using the XSQLDA_LENGTH
macro, see DSQL Programming Methods.