From ba0bce1ff361b00f0a5ad962b65ac33a29dcd131 Mon Sep 17 00:00:00 2001 From: sandeep Date: Wed, 14 Jun 2000 18:08:30 +0000 Subject: [PATCH] updated ctype.h git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@278 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- device/include/ctype.h | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/device/include/ctype.h b/device/include/ctype.h index 4eb9215c..a8150479 100644 --- a/device/include/ctype.h +++ b/device/include/ctype.h @@ -3,6 +3,13 @@ Written By - Sandeep Dutta . sandeep.dutta@usa.net (1998) + Revisions: + 1.0 - June.1.2000 1.0 - Bela Torok / bela.torok@kssg.ch + order: function definitions -> macros + corretced macro: isalpha(c) + added macros: _tolower(c), _toupper(c), tolower(c), toupper(c) toascii(c) + + This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any @@ -25,9 +32,6 @@ #ifndef __SDC51_CTYPE_H #define __SDC51_CTYPE_H 1 -#define isalnum(x) (isalpha(x) || isdigit(x)) -#define isalpha(x) (isupper(x) || islower(c)) - #ifdef SDCC_STACK_AUTO #warning Make sure you recompile _is*.c files as 'reentrant' @@ -54,6 +58,24 @@ extern char isspace (unsigned char ) ; extern char isxdigit (unsigned char ) ; #endif + +#define isalnum(c) (isalpha(c) || isdigit(c)) +#define isalpha(c) (isupper(c) || islower(c)) + +/* ANSI versions of _tolower & _toupper +#define _tolower(c) ((c) - ('a' - 'A')) +#define _toupper(c) ((c) + ('a' - 'A')) +*/ + +// The _tolower & _toupper functions below can applied to any +// alpha characters regardless of the case (upper or lower) +#define _tolower(c) ((c) | ('a' - 'A')) +#define _toupper(c) ((c) & ~('a' - 'A')) + +#define tolower(c) ((isupper(c)) ? _tolower(c) : (c)) +#define toupper(c) ((islower(c)) ? _toupper(c) : (c)) +#define toascii(c) ((c) & 0x7F) + #endif -- 2.47.2