home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
borhead.zip
/
CTYPE.H
< prev
next >
Wrap
C/C++ Source or Header
|
1994-11-09
|
3KB
|
146 lines
/* ctype.h
Defines the locale aware ctype macros.
*/
/*
* C/C++ Run Time Library - Version 1.5
*
* Copyright (c) 1987, 1994 by Borland International
* All Rights Reserved.
*
*/
#ifndef __CTYPE_H
#define __CTYPE_H
#if !defined(___DEFS_H)
#include <_defs.h>
#endif
#if !defined(RC_INVOKED)
#if defined(__STDC__)
#pragma warn -nak
#endif
#endif /* !RC_INVOKED */
#ifndef _SIZE_T
#define _SIZE_T
typedef unsigned size_t;
#endif
extern unsigned char _RTLENTRY _EXPDATA _ctype[ 257 ];
extern unsigned char _RTLENTRY _EXPDATA _lower[ 256 ];
extern unsigned char _RTLENTRY _EXPDATA _upper[ 256 ];
#ifdef __cplusplus
extern "C" {
#endif
int _RTLENTRY _EXPFUNC isalnum (int __c);
int _RTLENTRY _EXPFUNC isalpha (int __c);
int _RTLENTRY _EXPFUNC iscntrl (int __c);
int _RTLENTRY _EXPFUNC isdigit (int __c);
int _RTLENTRY _EXPFUNC isgraph (int __c);
int _RTLENTRY _EXPFUNC islower (int __c);
int _RTLENTRY _EXPFUNC isprint (int __c);
int _RTLENTRY _EXPFUNC ispunct (int __c);
int _RTLENTRY _EXPFUNC isspace (int __c);
int _RTLENTRY _EXPFUNC isupper (int __c);
int _RTLENTRY _EXPFUNC isxdigit(int __c);
int _RTLENTRY _EXPFUNC isascii (int __c);
#ifdef __cplusplus
}
#endif
/* character classes */
#define _IS_SP 1 /* space */
#define _IS_DIG 2 /* digit */
#define _IS_UPP 4 /* upper case */
#define _IS_LOW 8 /* lower case */
#define _IS_HEX 16 /* [0..9] or [A-F] or [a-f] */
#define _IS_CTL 32 /* control */
#define _IS_PUN 64 /* punctuation */
#define _IS_BLK 128 /* blank */
#define _IS_ALPHA (_IS_UPP | _IS_LOW)
#define _IS_ALNUM (_IS_DIG | _IS_ALPHA)
#define _IS_GRAPH (_IS_ALNUM | _IS_HEX | _IS_PUN)
#ifndef __USELOCALES__
/* C locale character classification macros */
#define isalnum(c) (_ctype[ (c)+1 ] & (_IS_ALNUM))
#define isalpha(c) (_ctype[ (c)+1 ] & (_IS_ALPHA))
#define iscntrl(c) (_ctype[ (c)+1 ] & (_IS_CTL))
#define isdigit(c) (_ctype[ (c)+1 ] & (_IS_DIG))
#define isgraph(c) (_ctype[ (c)+1 ] & (_IS_GRAPH))
#define islower(c) (_ctype[ (c)+1 ] & (_IS_LOW))
#define isprint(c) (_ctype[ (c)+1 ] & (_IS_GRAPH | _IS_BLK))
#define ispunct(c) (_ctype[ (c)+1 ] & (_IS_PUN))
#define isspace(c) (_ctype[ (c)+1 ] & (_IS_SP))
#define isupper(c) (_ctype[ (c)+1 ] & (_IS_UPP))
#define isxdigit(c) (_ctype[ (c)+1 ] & (_IS_HEX))
#endif /* __USELOCALES__ */
#define isascii(c) ((unsigned)(c) < 128)
#define toascii(c) ((c) & 0x7f)
#ifdef __cplusplus
extern "C" {
#endif
int _RTLENTRY _EXPFUNC tolower(int __ch);
int _RTLENTRY _EXPFUNC _ltolower(int __ch);
int _RTLENTRY _EXPFUNC toupper(int __ch);
int _RTLENTRY _EXPFUNC _ltoupper(int __ch);
#if !__STDC__ /* NON-ANSI */
#define _toupper(c) ((c) + 'A' - 'a')
#define _tolower(c) ((c) + 'a' - 'A')
#endif
#ifdef __cplusplus
}
#endif
#if defined( __USELOCALES__ )
#define toupper _ltoupper
#define tolower _ltolower
#endif
#if !defined(RC_INVOKED)
#if defined(__STDC__)
#pragma warn .nak
#endif
#endif /* !RC_INVOKED */
#endif /* __CTYPE_H */