CMGDK r49-rc2
组合类型 | 宏定义 | 类型定义 | 枚举 | 函数
K:/CMGDKv18/SDK/Source/SQL/MySQL/include/decimal.h文件参考

浏览该文件的源代码。

组合类型

struct  st_decimal_t

宏定义

#define string2decimal(A, B, C)   internal_str2dec((A), (B), (C), 0)
#define string2decimal_fixed(A, B, C)   internal_str2dec((A), (B), (C), 1)
#define decimal_make_zero(dec)
#define decimal_string_size(dec)
#define decimal_neg(dec)   do { (dec)->sign^=1; } while(0)
#define E_DEC_OK   0
#define E_DEC_TRUNCATED   1
#define E_DEC_OVERFLOW   2
#define E_DEC_DIV_ZERO   4
#define E_DEC_BAD_NUM   8
#define E_DEC_OOM   16
#define E_DEC_ERROR   31
#define E_DEC_FATAL_ERROR   30

类型定义

typedef int32 decimal_digit_t
typedef struct st_decimal_t decimal_t

枚举

enum  decimal_round_mode {
  TRUNCATE = 0, HALF_EVEN, HALF_UP, CEILING,
  FLOOR
}

函数

int internal_str2dec (const char *from, decimal_t *to, char **end, my_bool fixed)
int decimal2string (decimal_t *from, char *to, int *to_len, int fixed_precision, int fixed_decimals, char filler)
int decimal2ulonglong (decimal_t *from, ulonglong *to)
int ulonglong2decimal (ulonglong from, decimal_t *to)
int decimal2longlong (decimal_t *from, longlong *to)
int longlong2decimal (longlong from, decimal_t *to)
int decimal2double (decimal_t *from, double *to)
int double2decimal (double from, decimal_t *to)
int decimal_actual_fraction (decimal_t *from)
int decimal2bin (decimal_t *from, uchar *to, int precision, int scale)
int bin2decimal (const uchar *from, decimal_t *to, int precision, int scale)
int decimal_size (int precision, int scale)
int decimal_bin_size (int precision, int scale)
int decimal_result_size (decimal_t *from1, decimal_t *from2, char op, int param)
int decimal_intg (decimal_t *from)
int decimal_add (decimal_t *from1, decimal_t *from2, decimal_t *to)
int decimal_sub (decimal_t *from1, decimal_t *from2, decimal_t *to)
int decimal_cmp (decimal_t *from1, decimal_t *from2)
int decimal_mul (decimal_t *from1, decimal_t *from2, decimal_t *to)
int decimal_div (decimal_t *from1, decimal_t *from2, decimal_t *to, int scale_incr)
int decimal_mod (decimal_t *from1, decimal_t *from2, decimal_t *to)
int decimal_round (decimal_t *from, decimal_t *to, int new_scale, decimal_round_mode mode)
int decimal_is_zero (decimal_t *from)
void max_decimal (int precision, int frac, decimal_t *to)

宏定义文档

#define decimal_make_zero (   dec)
值:
do {                \
                                        (dec)->buf[0]=0;    \
                                        (dec)->intg=1;      \
                                        (dec)->frac=0;      \
                                        (dec)->sign=0;      \
                                      } while(0)
#define decimal_neg (   dec)    do { (dec)->sign^=1; } while(0)
#define decimal_string_size (   dec)
值:
(((dec)->intg ? (dec)->intg : 1) + \
                  (dec)->frac + ((dec)->frac > 0) + 2)
#define E_DEC_BAD_NUM   8
#define E_DEC_DIV_ZERO   4
#define E_DEC_ERROR   31
#define E_DEC_FATAL_ERROR   30
#define E_DEC_OK   0
#define E_DEC_OOM   16
#define E_DEC_OVERFLOW   2
#define E_DEC_TRUNCATED   1
#define string2decimal (   A,
  B,
 
)    internal_str2dec((A), (B), (C), 0)
#define string2decimal_fixed (   A,
  B,
 
)    internal_str2dec((A), (B), (C), 1)

类型定义文档

typedef int32 decimal_digit_t
typedef struct st_decimal_t decimal_t

枚举类型文档

枚举值:
TRUNCATE 
HALF_EVEN 
HALF_UP 
CEILING 
FLOOR 

函数文档

int bin2decimal ( const uchar from,
decimal_t to,
int  precision,
int  scale 
)
int decimal2bin ( decimal_t from,
uchar to,
int  precision,
int  scale 
)
int decimal2double ( decimal_t from,
double *  to 
)
int decimal2longlong ( decimal_t from,
longlong to 
)
int decimal2string ( decimal_t from,
char *  to,
int *  to_len,
int  fixed_precision,
int  fixed_decimals,
char  filler 
)
int decimal2ulonglong ( decimal_t from,
ulonglong to 
)
int decimal_actual_fraction ( decimal_t from)
int decimal_add ( decimal_t from1,
decimal_t from2,
decimal_t to 
)
int decimal_bin_size ( int  precision,
int  scale 
)
int decimal_cmp ( decimal_t from1,
decimal_t from2 
)
int decimal_div ( decimal_t from1,
decimal_t from2,
decimal_t to,
int  scale_incr 
)
int decimal_intg ( decimal_t from)
int decimal_is_zero ( decimal_t from)
int decimal_mod ( decimal_t from1,
decimal_t from2,
decimal_t to 
)
int decimal_mul ( decimal_t from1,
decimal_t from2,
decimal_t to 
)
int decimal_result_size ( decimal_t from1,
decimal_t from2,
char  op,
int  param 
)
int decimal_round ( decimal_t from,
decimal_t to,
int  new_scale,
decimal_round_mode  mode 
)
int decimal_size ( int  precision,
int  scale 
)
int decimal_sub ( decimal_t from1,
decimal_t from2,
decimal_t to 
)
int double2decimal ( double  from,
decimal_t to 
)
int internal_str2dec ( const char *  from,
decimal_t to,
char **  end,
my_bool  fixed 
)
int longlong2decimal ( longlong  from,
decimal_t to 
)
void max_decimal ( int  precision,
int  frac,
decimal_t to 
)
int ulonglong2decimal ( ulonglong  from,
decimal_t to 
)
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义