?? envind.h
字號(hào):
#define A_UP_R 0x52 /* R - upper case */
#define A_UP_S 0x53 /* S - upper case */
#define A_UP_T 0x54 /* T - upper case */
#define A_UP_U 0x55 /* U - upper case */
#define A_UP_V 0x56 /* V - upper case */
#define A_UP_W 0x57 /* W - upper case */
#define A_UP_X 0x58 /* X - upper case */
#define A_UP_Y 0x59 /* Y - upper case */
#define A_UP_Z 0x5A /* Z - upper case */
#define A_BKSL 0x5C /* backslash */
#define A_LW_A 0x61 /* a - lower case */
#define A_LW_B 0x62 /* b - lower case */
#define A_LW_C 0x63 /* c - lower case */
#define A_LW_D 0x64 /* d - lower case */
#define A_LW_E 0x65 /* e - lower case */
#define A_LW_F 0x66 /* f - lower case */
#define A_LW_G 0x67 /* g - lower case */
#define A_LW_H 0x68 /* h - lower case */
#define A_LW_I 0x69 /* i - lower case */
#define A_LW_J 0x6A /* j - lower case */
#define A_LW_K 0x6B /* k - lower case */
#define A_LW_L 0x6C /* l - lower case */
#define A_LW_M 0x6D /* m - lower case */
#define A_LW_N 0x6E /* n - lower case */
#define A_LW_O 0x6F /* o - lower case */
#define A_LW_P 0x70 /* p - lower case */
#define A_LW_Q 0x71 /* q - lower case */
#define A_LW_R 0x72 /* r - lower case */
#define A_LW_S 0x73 /* s - lower case */
#define A_LW_T 0x74 /* t - lower case */
#define A_LW_U 0x75 /* u - lower case */
#define A_LW_V 0x76 /* v - lower case */
#define A_LW_W 0x77 /* w - lower case */
#define A_LW_X 0x78 /* x - lower case */
#define A_LW_Y 0x79 /* y - lower case */
#define A_LW_Z 0x7A /* z - lower case */
#define A_DEL 0x7F /* delete */
#define A_INVCHR 0xFF /* invalid */
#define IA5MAX 128 /* maximum number of ASCII characters */
/* general macros */
#ifdef MIN
#undef MIN
#define MIN(x, y) ((x) > (y) ? (y) : (x)) /* get minimum value */
#else
#define MIN(x, y) ((x) > (y) ? (y) : (x)) /* get minimum value */
#endif /* MIN */
#ifdef MAX
#undef MAX
#define MAX(x, y) ((x) > (y) ? (x) : (y)) /* get maximum value */
#else
#define MAX(x, y) ((x) > (y) ? (x) : (y)) /* get maximum value */
#endif /* MAX */
#ifdef ABS
#undef ABS
#define ABS(x) ((x) < 0 ? -(x) : x) /* absolute value */
#else
#define ABS(x) ((x) < 0 ? -(x) : x) /* absolute value */
#endif /* ABS */
/* RG: changed the order of parentheses to make the casts more accurate */
#define GetHiByte(w) (((U16)(w) >> 8) & 0xff) /* get hi byte from word */
#define GetLoByte(w) ((U16)(w) & 0xff) /* get lo byte from word */
#define GetHiWord(l) (((U32)(l) >> 16) & 0xffffL) /* get hi word of long */
#define GetLoWord(l) ((U32)(l) & 0xffffL) /* get lo word of long */
/* RG: changed put macros so the target does not have to be cleared before use */
#define PutHiByte(w,b) (U16) (((U16)(b) << 8) | ((U16)(w) & 0x00ff)) /* put hi byte to word */
#define PutLoByte(w,b) (U16) (((U16)(b) & 0xff) | ((U16)(w) & 0xff00)) /* put lo byte to word */
#define PutHiWord(l,w) (U32) (((U32)(w) << 16) | ((U32)(l) & (U32)0x0000ffff)) /* put hi word to long */
#define PutLoWord(l,w) (U32) (((U32)(w) & 0xffff) | ((U32)(l) & (U32)0xffff0000)) /* put lo word to long */
#define Char(c) ((c) & 0x7f) /* truncate to 7 bits */
#define Byte(c) ((c) & 0xff) /* truncate to 8 bits */
#define Word(c) ((c) & 0xffffL) /* truncate to 16 bits */
#define IsOdd(c) (((c % 2) == 1) ? TRUE:FALSE)
#define IsEven(c) (((c % 2) == 0) ? TRUE:FALSE)
#define StripPar(c) ((c) & 0x7f)
/* ASCII character set macros */
#define AIsUpper(c) ((c>=A_UP_A) && (c<=A_UP_Z))
#define AIsLower(c) ((c>=A_LW_A) && (c<=A_LW_Z))
#define AIsAlpha(c) (AIsUpper(c) || AIsLower(c))
#define AIsDigit(c) ((c>=A_0) && (c<=A_9))
#define AIsSpace(c) ((c==A_SP) || (c==A_HT) || (c==A_LF))
#define AIsWhite(c) ((c==A_SP) || (c==A_HT) || (c==A_LF))
#define AToUpper(c) (AIsLower(c) ? (c+A_UP_A-A_LW_A):(c))
#define AToLower(c) (AIsUpper(c) ? (c+A_LW_A-A_UP_A):(c))
#define AIsAscii(c) ((c>=A_SP) && (c<A_DEL))
#define AIsXupper(c) ((c>=A_UP_A) && (c<=A_UP_F))
#define AIsXlower(c) ((c>=A_LW_A) && (c<=A_LW_F))
#define AIsXdigit(c) (AIsDigit(c) || AIsXupper(c) || AIsXlower(c))
#define AIsCntrl(c) (((c>=A_NULL) && (c<A_SP)) || (c==A_DEL))
#define ACmdDelim(c) ((c == A_CR) || (c == A_PLUS))
#endif
/********************************************************************30**
End of file: envind.h 1.20 - 02/24/99 16:06:25
*********************************************************************31*/
/********************************************************************40**
Notes:
*********************************************************************41*/
/********************************************************************50**
*********************************************************************51*/
/********************************************************************60**
Revision history:
*********************************************************************61*/
/********************************************************************70**
version initials description
----------- --------- ------------------------------------------------
1.1.0.0 jrl 1. initial release.
1.2.0.0 jrl 1. miscellaneous changes.
1.3.0.0 jrl 1. change ENVIND define to __ENVIND__ to be
consistent with other common files.
1.4.0.0 jrl 1. text changes
1.5 jrl 1. trillium development system checkpoint (dvs)
at version: 1.4.0.0
1.6 jrl 1. text change
2. add (U32) in PutHiWord macro
1.7 nkk 1. add correct cast "(U16)" for PutHiByte, cast
"(U16)" for PutLoByte, and cast "(U32)" for
PutLoWord.
1.8 jrl 1. cast all Get macros to unsigned
*********************************************************************71*/
/********************************************************************80**
version pat init description
----------- ----- ---- ------------------------------------------------
1.9 --- jrl 1. text changes
1.10 --- jrl 1. add MIN and MAX macros
1.11 --- jrl 1. text changes
1.12 --- lc 1. test changes
1.13 --- rg 1. changed Put* macros, so the target does not
have to be cleared before using these macros.
--- rg 2. changed the order of parentheses in Get*
macros so the casts are more accurate.
1.14 --- nkk 1. add absolute value macro
1.15 --- fmg 1. added ifdefs around defines that might
conflict with other system header files
--- 2. changed Put/Get macros to cast constants
appropriately.
1.16 --- rg 1. added cast to Put* macros to remove compiler
warnings.
1.17 --- mb 1. Removed the extension L from PutHiByte,
PutLoByte, PutHiWord, PutLoWord
*********************************************************************81*/
/********************************************************************90**
ver pat init description
------------ -------- ---- ----------------------------------------------
1.18 --- apr 1. Fixed sign extension bug in PutLoByte and
PutLoWord.
1.19 --- bbk 1. Changed copyright header date.
1.20 --- tej 1. Change in header
*********************************************************************91*/
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -