C 的 BIGINT 函数

注: 以下 BIGINT 函数仅对 IBM® Informix® ESQL/C 的用户可用。要使用这些函数,ESQL/C 用户需要手工将 C 代码链接至 ESQL/C 库。

BIGINT 数据类型是独立于机器的方法,用于表示范围从 -263-1 到 263-1 的数字。ESQL/C 提供了一些例程,可以很方便地将 BIGINT 数据类型转换为 C 语言中的其它数据类型。

BIGINT 数据类型在内部由 ifx_int8_t 结构表示。有关结构的信息可在头文件 int8.h 中找到,该头文件包括在 ESQL/C 产品中。将此文件加入使用任何 BIGINT 函数的所有 C 源文件中。

针对 int8 类型数字的所有操作必须使用对应 int8 数据类型的下列 ESQL/C 库函数来执行。任何其它操作、修改或分析可能会产生不可预测的结果。ESQL/C 库提供下列函数,它们允许您处理 int8 数字并将 int8 类型的数字转换为其它数据类型或从其它数据类型转换为 int8 类型。

函数名 描述
ifx_int8add( ) 加上两个 BIGINT 类型值
ifx_int8cmp( ) 比较两个 BIGINT 类型数字
ifx_int8copy( ) 复制 ifx_int8_t 结构
ifx_int8cvasc( ) 将 C char 类型值转换为 BIGINT 类型数字
ifx_int8cvdbl( ) 将 C double 类型数字转换为 BIGINT 类型数字
ifx_int8cvdec( ) decimal 类型值转换为 BIGINT 类型值
ifx_int8cvflt( ) 将 C float 类型值转换为 BIGINT 类型值
ifx_int8cvint( ) 将 C int 类型数字转换为 BIGINT 类型数字
ifx_int8cvlong( ) 将 C long(在 64 位机器上为 int)类型值转换为 BIGINT 类型值
ifx_int8cvlong_long( ) 将 C long long 类型(8 字节值,在 32 位系统上为 long long,在 64 位系统上为 long)值转换为 BIGINT 类型值
ifx_int8div( ) 除以两个 BIGINT 数字
ifx_int8mul( ) 乘以两个 BIGINT 数字
ifx_int8sub( ) 减去两个 BIGINT 数字
ifx_int8toasc( ) 将 BIGINT 类型值转换为 C char 类型值
ifx_int8todbl( ) 将 BIGINT 类型值转换为 C double 类型值
ifx_int8todec( ) 将 BIGINT 类型数字转换为 decimal 类型数字
ifx_int8toflt( ) 将 BIGINT 类型数字转换为 C float 类型数字
ifx_int8toint( ) 将 BIGINT 类型值转换为 C int 类型值
ifx_int8tolong( ) 将 BIGINT 类型值转换为 C long(在 64 位机器上为 int)类型值
ifx_int8tolong_long( ) 将 C long long(在 64 位机器上为 long)类型值转换为 BIGINT 类型值

相关参考有关各个函数的更多信息,请参阅以下
IBM Informix ESQL/C Programmer’s Manual
C 的 DATE 函数
C 的 DATETIME 和 INTERVAL 函数
C 的 DECIMAL 函数
从 EGL 程序调用 C 函数

使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.