📄 m_apm.h
字号:
/* * M_APM - m_apm.h * * Copyright (C) 1999 Michael C. Ring * * Permission to use, copy, and distribute this software and its * documentation for any purpose with or without fee is hereby granted, * provided that the above copyright notice appear in all copies and * that both that copyright notice and this permission notice appear * in supporting documentation. * * Permission to modify the software is granted, but not the right to * distribute the modified code. Modifications are to be distributed * as patches to released version. * * This software is provided "as is" without express or implied warranty. *//* * This is the header file that the user will include. * * $Log: m_apm.h,v $ * Revision 1.7 1999/09/18 03:11:23 mike * add new prototype * * Revision 1.6 1999/09/18 03:08:25 mike * add new prototypes * * Revision 1.5 1999/09/18 01:37:55 mike * added new prototype * * Revision 1.4 1999/07/12 02:04:30 mike * added new function prototpye (m_apm_integer_string) * * Revision 1.3 1999/05/15 21:04:08 mike * added factorial prototype * * Revision 1.2 1999/05/12 20:50:12 mike * added more constants * * Revision 1.1 1999/05/12 20:48:25 mike * Initial revision * * $Id: m_apm.h,v 1.7 1999/09/18 03:11:23 mike Exp $ */#ifndef M__APM__INCLUDED#define M__APM__INCLUDEDtypedef unsigned char UCHAR;struct M_APM_struct { long m_apm_id; int m_apm_malloclength; int m_apm_datalength; int m_apm_exponent; int m_apm_sign; UCHAR *m_apm_data;};typedef struct M_APM_struct *M_APM;/* * convienient predefined constants */extern M_APM MM_Zero;extern M_APM MM_One;extern M_APM MM_Two;extern M_APM MM_Three;extern M_APM MM_Four;extern M_APM MM_Five;extern M_APM MM_Ten;extern M_APM MM_PI;extern M_APM MM_HALF_PI;extern M_APM MM_2_PI;extern M_APM MM_E;extern M_APM MM_LOG_E_BASE_10;extern M_APM MM_LOG_10_BASE_E;extern M_APM MM_LOG_2_BASE_E;extern M_APM MM_LOG_3_BASE_E;/* * function prototypes */extern M_APM m_apm_init(void);extern void m_apm_free(M_APM);extern void m_apm_set_string(M_APM, char *);extern void m_apm_set_double(M_APM, double);extern void m_apm_set_long(M_APM, long);extern void m_apm_to_string(char *, int, M_APM);extern void m_apm_to_integer_string(char *, M_APM);extern void m_apm_absolute_value(M_APM, M_APM);extern void m_apm_negate(M_APM, M_APM);extern void m_apm_copy(M_APM, M_APM);extern void m_apm_round(M_APM, int, M_APM);extern int m_apm_compare(M_APM, M_APM);extern int m_apm_sign(M_APM);extern int m_apm_exponent(M_APM);extern int m_apm_significant_digits(M_APM);extern void m_apm_add(M_APM, M_APM, M_APM);extern void m_apm_subtract(M_APM, M_APM, M_APM);extern void m_apm_multiply(M_APM, M_APM, M_APM);extern void m_apm_divide(M_APM, int, M_APM, M_APM);extern void m_apm_integer_divide(M_APM, M_APM, M_APM);extern void m_apm_integer_div_rem(M_APM, M_APM, M_APM, M_APM);extern void m_apm_factorial(M_APM, M_APM);extern void m_apm_get_random(M_APM);extern void m_apm_sqrt(M_APM, int, M_APM);extern void m_apm_log(M_APM, int, M_APM);extern void m_apm_log10(M_APM, int, M_APM);extern void m_apm_exp(M_APM, int, M_APM);extern void m_apm_pow(M_APM, int, M_APM, M_APM);extern void m_apm_integer_pow(M_APM, int, M_APM, int);extern void m_apm_sin_cos(M_APM, M_APM, int, M_APM);extern void m_apm_sin(M_APM, int, M_APM);extern void m_apm_cos(M_APM, int, M_APM);extern void m_apm_tan(M_APM, int, M_APM);extern void m_apm_arcsin(M_APM, int, M_APM);extern void m_apm_arccos(M_APM, int, M_APM);extern void m_apm_arctan(M_APM, int, M_APM);extern void m_apm_arctan2(M_APM, int, M_APM, M_APM);#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -