?? lib_ascii.h
字號:
#define ASCII_IS_GRAPH(c) ((((c) >= ASCII_CHAR_EXCLAMATION_MARK) && ((c) <= ASCII_CHAR_TILDE)) ? (DEF_YES) : (DEF_NO))
/*
*********************************************************************************************************
* ASCII_IS_LOWER()
*
* Description : Determine whether character is a lowercase alphabetic character.
*
* Argument(s) : c Character to examine.
*
* Return(s) : DEF_YES, if character is an lowercase alphabetic character.
*
* DEF_NO, if character is NOT an lowercase alphabetic character.
*
* Caller(s) : various.
*
* Note(s) : none.
*********************************************************************************************************
*/
#define ASCII_IS_LOWER(c) ((((c) >= ASCII_CHAR_LATIN_SMALL_A) && ((c) <= ASCII_CHAR_LATIN_SMALL_Z)) ? (DEF_YES) : (DEF_NO))
/*
*********************************************************************************************************
* ASCII_IS_PRINT()
*
* Description : Determine whether character is a printing character.
*
* Argument(s) : c Character to examine.
*
* Return(s) : DEF_YES, if character is an printing character.
*
* DEF_NO, if character is NOT an printing character.
*
* Caller(s) : various.
*
* Note(s) : (1) ISO/IEC 9899, Note 170, states that in the 'seven-bit US ASCII character set, the
* printing characters are those whose values lie from 0x20 (space) through 0x7E
* (tilde).'
*********************************************************************************************************
*/
#define ASCII_IS_PRINT(c) ((((c) >= ASCII_CHAR_SPACE) && ((c) <= ASCII_CHAR_TILDE)) ? (DEF_YES) : (DEF_NO))
/*
*********************************************************************************************************
* ASCII_IS_PUNCT()
*
* Description : Determine whether character is a punctuation character.
*
* Argument(s) : c Character to examine.
*
* Return(s) : DEF_YES, if character is an punctuation character.
*
* DEF_NO, if character is NOT an punctuation character.
*
* Caller(s) : various.
*
* Note(s) : (1) 'ASCII_IS_PUNCT()' returns TRUE if 'ASCII_IS_PRINT()' would return TRUE for the
* argument character, but BOTH 'ASCII_IS_SPACE()' AND 'ASCII_IS_ALNUM()' would return
* FALSE.
*********************************************************************************************************
*/
#define ASCII_IS_PUNCT(c) (((((c) >= ASCII_CHAR_EXCLAMATION_MARK ) && ((c) <= ASCII_CHAR_SOLIDUS )) || \
(((c) >= ASCII_CHAR_COLON ) && ((c) <= ASCII_CHAR_COMMERCIAL_AT)) || \
(((c) >= ASCII_CHAR_LEFT_SQUARE_BRACKET) && ((c) <= ASCII_CHAR_GRAVE_ACCENT )) || \
(((c) >= ASCII_CHAR_LEFT_CURLY_BRACKET ) && ((c) <= ASCII_CHAR_TILDE ))) ? (DEF_YES) : (DEF_NO))
/*
*********************************************************************************************************
* ASCII_IS_SPACE()
*
* Description : Determine whether character is a white-space character.
*
* Argument(s) : c Character to examine.
*
* Return(s) : DEF_YES, if character is a white-space character.
*
* DEF_NO, if character is NOT a white-space character.
*
* Caller(s) : various.
*
* Note(s) : (1) ISO/IEC 9899, Section 7.4.1.10.2 defines the "standard white-space characters" as the
* space (' '), the form feed ('\f'), the new-line ('\n'), the carriage return ('\r'),
* the horizontal tab ('\t') & the vertical tab ('\v').
*********************************************************************************************************
*/
#define ASCII_IS_SPACE(c) ((((c) == ASCII_CHAR_SPACE) || ((c) == ASCII_CHAR_FF) || \
((c) == ASCII_CHAR_LF ) || ((c) == ASCII_CHAR_CR) || \
((c) == ASCII_CHAR_HT ) || ((c) == ASCII_CHAR_VT)) ? (DEF_YES) : (DEF_NO))
/*
*********************************************************************************************************
* ASCII_IS_UPPER()
*
* Description : Determine whether character is a uppercase alphabetic character.
*
* Argument(s) : c Character to examine.
*
* Return(s) : DEF_YES, if character is an uppercase alphabetic character.
*
* DEF_NO, if character is NOT an uppercase alphabetic character.
*
* Caller(s) : various.
*
* Note(s) : none.
*********************************************************************************************************
*/
#define ASCII_IS_UPPER(c) ((((c) >= ASCII_CHAR_LATIN_CAPITAL_A) && ((c) <= ASCII_CHAR_LATIN_CAPITAL_Z)) ? (DEF_YES) : (DEF_NO))
/*
*********************************************************************************************************
* ASCII_IS_XDIGIT()
*
* Description : Determine whether character is a hexadecimal-digit character.
*
* Argument(s) : c Character to examine.
*
* Return(s) : DEF_YES, if character is a hexadecimal-digit character.
*
* DEF_NO, if character is NOT a hexadecimal-digit character.
*
* Caller(s) : various.
*
* Note(s) : none.
*********************************************************************************************************
*/
#define ASCII_IS_XDIGIT(c) (((((c) >= ASCII_CHAR_DIGIT_ZERO ) && ((c) <= ASCII_CHAR_DIGIT_NINE )) || \
(((c) >= ASCII_CHAR_LATIN_CAPITAL_A) && ((c) <= ASCII_CHAR_LATIN_CAPITAL_F)) || \
(((c) >= ASCII_CHAR_LATIN_SMALL_A ) && ((c) <= ASCII_CHAR_LATIN_SMALL_F ))) ? (DEF_YES) : (DEF_NO))
/*$PAGE*/
/*
*********************************************************************************************************
* ASCII CHARACTER CASE MAPPING MACRO's
*********************************************************************************************************
*/
/*
*********************************************************************************************************
* ASCII_TO_LOWER()
*
* Description : Convert uppercase letter to a corresponding lowercase letter.
*
* Argument(s) : c Character to examine.
*
* Return(s) : If 'ASCII_IS_UPPER()' would return TRUE for the argument character, the lowercase
* equivalent is returned. Otherwise, the argument character is returned.
*
* Caller(s) : various.
*
* Note(s) : none.
*********************************************************************************************************
*/
#define ASCII_TO_LOWER(c) ((((c) >= ASCII_CHAR_LATIN_CAPITAL_A) && ((c) <= ASCII_CHAR_LATIN_CAPITAL_Z)) ? ((c) + 0x20) : (c))
/*
*********************************************************************************************************
* ASCII_TO_UPPER()
*
* Description : Convert lowercase letter to a corresponding uppercase letter.
*
* Argument(s) : c Character to examine.
*
* Return(s) : If 'ASCII_IS_LOWER()' would return TRUE for the argument character, the uppercase
* equivalent is returned. Otherwise, the argument character is returned.
*
* Caller(s) : various.
*
* Note(s) : none.
*********************************************************************************************************
*/
#define ASCII_TO_UPPER(c) ((((c) >= ASCII_CHAR_LATIN_SMALL_A) && ((c) <= ASCII_CHAR_LATIN_SMALL_Z)) ? ((c) - 0x20) : (c))
/*
*********************************************************************************************************
* FUNCTION PROTOTYPES
*********************************************************************************************************
*/
CPU_BOOLEAN ASCII_IsAlnum (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsAlpha (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsBlank (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsCtrl (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsDigit (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsGraph (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsLower (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsPrint (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsPunct (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsSpace (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsUpper (CPU_CHAR c);
CPU_BOOLEAN ASCII_IsXDigit(CPU_CHAR c);
CPU_CHAR ASCII_ToLower (CPU_CHAR c);
CPU_CHAR ASCII_ToUpper (CPU_CHAR c);
CPU_BOOLEAN ASCII_Cmp (CPU_CHAR c1,
CPU_CHAR c2);
/*$PAGE*/
/*
*********************************************************************************************************
* CONFIGURATION ERRORS
*********************************************************************************************************
*/
/*
*********************************************************************************************************
* MODULE END
*********************************************************************************************************
*/
#endif /* End of lib ascii module include. */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -