|
|
1.1 ! root 1: /*** ! 2: *tchar.h - definitions for generic international functions ! 3: * ! 4: * Copyright (c) 1991-1992, Microsoft Corporation. All rights reserved. ! 5: * ! 6: *Purpose: ! 7: * Definitions for generic international functions, mostly defines ! 8: * which map string/formatted-io/ctype functions to char or wide-char ! 9: * versions. ! 10: * ! 11: * NOTE: it is meaningless to support multibyte/wide-char conversions ! 12: * ! 13: ****/ ! 14: ! 15: #ifndef _INC_TCHAR ! 16: ! 17: #ifdef __cplusplus ! 18: extern "C" { ! 19: #endif ! 20: ! 21: ! 22: /* obsolete: remove any references */ ! 23: #define _TSTART ! 24: ! 25: #ifdef _UNICODE ! 26: ! 27: typedef wchar_t TCHAR; ! 28: #define _T(x) L ## x ! 29: ! 30: #define _tprintf wprintf ! 31: #define _ftprintf fwprintf ! 32: #define _stprintf swprintf ! 33: #define _sntprintf _snwprintf ! 34: #define _vtprintf vwprintf ! 35: #define _vftprintf vfwprintf ! 36: #define _vstprintf vswprintf ! 37: #define _vsntprintf _vsnwprintf ! 38: ! 39: #define _tcscat wcscat ! 40: #define _tcschr wcschr ! 41: #define _tcscmp wcscmp ! 42: #define _tcscpy wcscpy ! 43: #define _tcscspn wcscspn ! 44: #define _tcslen wcslen ! 45: #define _tcsncat wcsncat ! 46: #define _tcsncmp wcsncmp ! 47: #define _tcsncpy wcsncpy ! 48: #define _tcspbrk wcspbrk ! 49: #define _tcsrchr wcsrchr ! 50: #define _tcsspn wcsspn ! 51: #define _tcsstr wcsstr ! 52: ! 53: #define _tcsdup _wcsdup ! 54: #define _tcsicmp _wcsicmp ! 55: #define _tcsnicmp _wcsnicmp ! 56: #define _tcsnset _wcsnset ! 57: #define _tcsrev _wcsrev ! 58: #define _tcsset _wcsset ! 59: ! 60: #define _tcslwr _wcslwr ! 61: #define _tcsupr _wcsupr ! 62: #define _tcsxfrm wcsxfrm ! 63: #define _tcscoll wcscoll ! 64: #define _tcsicoll _wcsicoll ! 65: ! 66: #define _istalpha iswalpha ! 67: #define _istupper iswupper ! 68: #define _istlower iswlower ! 69: #define _istdigit iswdigit ! 70: #define _istxdigit iswxdigit ! 71: #define _istspace iswspace ! 72: #define _istpunct iswpunct ! 73: #define _istalnum iswalnum ! 74: #define _istprint iswprint ! 75: #define _istgraph iswgraph ! 76: #define _istcntrl iswcntrl ! 77: #define _istascii iswascii ! 78: ! 79: #define _totupper towupper ! 80: #define _totlower towlower ! 81: ! 82: #else ! 83: ! 84: typedef char TCHAR; ! 85: #define _T(x) x ! 86: ! 87: #define _tprintf printf ! 88: #define _ftprintf fprintf ! 89: #define _stprintf sprintf ! 90: #define _sntprintf _snprintf ! 91: #define _vtprintf vprintf ! 92: #define _vftprintf vfprintf ! 93: #define _vstprintf vsprintf ! 94: #define _vsntprintf _vsnprintf ! 95: #define _tscanf scanf ! 96: #define _ftscanf fscanf ! 97: #define _stscanf sscanf ! 98: ! 99: #define _tcscat strcat ! 100: #define _tcschr strchr ! 101: #define _tcscmp strcmp ! 102: #define _tcscpy strcpy ! 103: #define _tcscspn strcspn ! 104: #define _tcslen strlen ! 105: #define _tcsncat strncat ! 106: #define _tcsncmp strncmp ! 107: #define _tcsncpy strncpy ! 108: #define _tcspbrk strpbrk ! 109: #define _tcsrchr strrchr ! 110: #define _tcsspn strspn ! 111: #define _tcsstr strstr ! 112: #define _tcstok strtok ! 113: ! 114: #define _tcsdup _strdup ! 115: #define _tcsicmp _stricmp ! 116: #define _tcsnicmp _strnicmp ! 117: #define _tcsnset _strnset ! 118: #define _tcsrev _strrev ! 119: #define _tcsset _strset ! 120: ! 121: #define _tcslwr _strlwr ! 122: #define _tcsupr _strupr ! 123: #define _tcsxfrm strxfrm ! 124: #define _tcscoll strcoll ! 125: #define _tcsicoll _stricoll ! 126: ! 127: #define _istalpha isalpha ! 128: #define _istupper isupper ! 129: #define _istlower islower ! 130: #define _istdigit isdigit ! 131: #define _istxdigit isxdigit ! 132: #define _istspace isspace ! 133: #define _istpunct ispunct ! 134: #define _istalnum isalnum ! 135: #define _istprint isprint ! 136: #define _istgraph isgraph ! 137: #define _istcntrl iscntrl ! 138: #define _istascii isascii ! 139: ! 140: #define _totupper toupper ! 141: #define _totlower tolower ! 142: ! 143: #endif /* _UNICODE */ ! 144: ! 145: #ifdef __cplusplus ! 146: } ! 147: #endif ! 148: ! 149: #define _INC_TCHAR ! 150: #endif /* _INC_TCHAR */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.