⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tchar.h

📁 this is ffmpeg this is ffmpeg this ffmpeg
💻 H
字号:
/*  * tchar.h * This file has no copyright assigned and is placed in the Public Domain. * This file is a part of the mingw-runtime package. * No warranty is given; refer to the file DISCLAIMER within the package. * * Unicode mapping layer for the standard C library. By including this * file and using the 't' names for string functions * (eg. _tprintf) you can make code which can be easily adapted to both * Unicode and non-unicode environments. In a unicode enabled compile define * _UNICODE before including tchar.h, otherwise the standard non-unicode * library functions will be used. * * Note that you still need to include string.h or stdlib.h etc. to define * the appropriate functions. Also note that there are several defines * included for non-ANSI functions which are commonly available (but using * the convention of prepending an underscore to non-ANSI library function * names). * */#ifndef	_TCHAR_H_#define _TCHAR_H_/* All the headers include this file. */#include <_mingw.h>/* * NOTE: This tests _UNICODE, which is different from the UNICODE define *       used to differentiate Win32 API calls. */#ifdef	_UNICODE/* * Include <wchar.h> for wchar_t and WEOF if _UNICODE. */#include <wchar.h>/* * Use TCHAR instead of char or wchar_t. It will be appropriately translated * if _UNICODE is correctly defined (or not). */#ifndef _TCHAR_DEFINED#ifndef RC_INVOKEDtypedef	wchar_t	TCHAR;typedef wchar_t _TCHAR;#endif	/* Not RC_INVOKED */#define _TCHAR_DEFINED#endif/* * Use _TEOF instead of EOF or WEOF. It will be appropriately translated if * _UNICODE is correctly defined (or not). */#define _TEOF WEOF/* * __TEXT is a private macro whose specific use is to force the expansion of a * macro passed as an argument to the macros _T or _TEXT.  DO NOT use this * macro within your programs.  It's name and function could change without * notice. */#define	__TEXT(q)	L##q/*  for porting from other Windows compilers */#if 0  /* no  wide startup module */#define _tmain      wmain#define _tWinMain   wWinMain#define _tenviron   _wenviron#define __targv     __wargv#endif/* * Unicode functions */#define	_tprintf	wprintf#define	_ftprintf	fwprintf#define	_stprintf	swprintf#define	_sntprintf	_snwprintf#define	_vtprintf	vwprintf#define	_vftprintf	vfwprintf#define _vstprintf	vswprintf#define	_vsntprintf	_vsnwprintf#define	_tscanf		wscanf#define	_ftscanf	fwscanf#define	_stscanf	swscanf#define	_fgettc		fgetwc#define	_fgettchar	_fgetwchar#define	_fgetts		fgetws#define	_fputtc		fputwc#define	_fputtchar	_fputwchar#define	_fputts		fputws#define	_gettc		getwc#define	_getts		_getws#define	_puttc		putwc#define _puttchar       putwchar#define	_putts		_putws#define	_ungettc	ungetwc#define	_tcstod		wcstod#define	_tcstol		wcstol#define _tcstoul	wcstoul#define	_itot		_itow#define	_ltot		_ltow#define	_ultot		_ultow#define	_ttoi		_wtoi#define	_ttol		_wtol#define	_tcscat		wcscat#define _tcschr		wcschr#define _tcscmp		wcscmp#define _tcscpy		wcscpy#define _tcscspn	wcscspn#define	_tcslen		wcslen#define	_tcsncat	wcsncat#define	_tcsncmp	wcsncmp#define	_tcsncpy	wcsncpy#define	_tcspbrk	wcspbrk#define	_tcsrchr	wcsrchr#define _tcsspn		wcsspn#define	_tcsstr		wcsstr#define _tcstok		wcstok#define	_tcsdup		_wcsdup#define	_tcsicmp	_wcsicmp#define	_tcsnicmp	_wcsnicmp#define	_tcsnset	_wcsnset#define	_tcsrev		_wcsrev#define _tcsset		_wcsset#define	_tcslwr		_wcslwr#define	_tcsupr		_wcsupr#define	_tcsxfrm	wcsxfrm#define	_tcscoll	wcscoll#define	_tcsicoll	_wcsicoll#define	_istalpha	iswalpha#define	_istupper	iswupper#define	_istlower	iswlower#define	_istdigit	iswdigit#define	_istxdigit	iswxdigit#define	_istspace	iswspace#define	_istpunct	iswpunct#define	_istalnum	iswalnum#define	_istprint	iswprint#define	_istgraph	iswgraph#define	_istcntrl	iswcntrl#define	_istascii	iswascii#define _totupper	towupper#define	_totlower	towlower#define _tcsftime	wcsftime/* Macro functions */ #define _tcsdec     _wcsdec#define _tcsinc     _wcsinc#define _tcsnbcnt   _wcsncnt#define _tcsnccnt   _wcsncnt#define _tcsnextc   _wcsnextc#define _tcsninc    _wcsninc#define _tcsspnp    _wcsspnp#define _wcsdec(_wcs1, _wcs2) ((_wcs1)>=(_wcs2) ? NULL : (_wcs2)-1)#define _wcsinc(_wcs)  ((_wcs)+1)#define _wcsnextc(_wcs) ((unsigned int) *(_wcs))#define _wcsninc(_wcs, _inc) (((_wcs)+(_inc)))#define _wcsncnt(_wcs, _cnt) ((wcslen(_wcs)>_cnt) ? _count : wcslen(_wcs))#define _wcsspnp(_wcs1, _wcs2) ((*((_wcs1)+wcsspn(_wcs1,_wcs2))) ? ((_wcs1)+wcsspn(_wcs1,_wcs2)) : NULL)#if 1  /* defined __MSVCRT__ *//* *   These wide functions not in crtdll.dll. *   Define macros anyway so that _wfoo rather than _tfoo is undefined */#define _ttoi64     _wtoi64#define _i64tot     _i64tow#define _ui64tot    _ui64tow#define	_tasctime	_wasctime#define	_tctime		_wctime#define	_tstrdate	_wstrdate#define	_tstrtime	_wstrtime#define	_tutime		_wutime#define _tcsnccoll  _wcsncoll#define _tcsncoll   _wcsncoll#define _tcsncicoll _wcsnicoll#define _tcsnicoll  _wcsnicoll#define _taccess    _waccess#define _tchmod     _wchmod#define _tcreat     _wcreat#define _tfindfirst _wfindfirst#define _tfindnext  _wfindnext#define _tfdopen    _wfdopen#define _tfopen     _wfopen#define _tfreopen   _wfreopen#define _tfsopen    _wfsopen#define _tgetenv    _wgetenv#define _tputenv    _wputenv#define _tsearchenv _wsearchenv#define _tmakepath  _wmakepath#define _tsplitpath _wsplitpath#define _tfullpath  _wfullpath#define _tmktemp    _wmktemp#define _topen      _wopen#define _tremove    _wremove#define _trename    _wrename#define _tsopen     _wsopen#define _tsetlocale _wsetlocale#define _tunlink    _wunlink#define _tfinddata_t    _wfinddata_t#define _tfindfirsti64  _wfindfirsti64#define _tfindnexti64   _wfindnexti64#define _tfinddatai64_t _wfinddatai64_t#define _tchdir		_wchdir#define _tgetcwd	_wgetcwd#define _tgetdcwd	_wgetdcwd#define _tmkdir		_wmkdir#define _trmdir		_wrmdir#define _tstat		_wstat#define _tstati64	_wstati64#define _tstat64	_wstat64#endif  /* __MSVCRT__ *//* dirent structures and functions */#define _tdirent	_wdirent#define _TDIR 		_WDIR#define _topendir	_wopendir#define _tclosedir	_wclosedir#define _treaddir	_wreaddir#define _trewinddir	_wrewinddir#define _ttelldir	_wtelldir#define _tseekdir	_wseekdir#else	/* Not _UNICODE *//* * TCHAR, the type you should use instead of char. */#ifndef _TCHAR_DEFINED#ifndef RC_INVOKEDtypedef char	TCHAR;typedef char	_TCHAR;#endif#define _TCHAR_DEFINED#endif/* * _TEOF, the constant you should use instead of EOF. */#define _TEOF EOF/* * __TEXT is a private macro whose specific use is to force the expansion of a * macro passed as an argument to the macros _T or _TEXT.  DO NOT use this * macro within your programs.  It's name and function could change without * notice. */#define	__TEXT(q)	q/*  for porting from other Windows compilers */#define _tmain      main#define _tWinMain   WinMain#define _tenviron  _environ#define __targv     __argv/* * Non-unicode (standard) functions */#define	_tprintf	printf#define _ftprintf	fprintf#define	_stprintf	sprintf#define	_sntprintf	_snprintf#define	_vtprintf	vprintf#define	_vftprintf	vfprintf#define _vstprintf	vsprintf#define	_vsntprintf	_vsnprintf#define	_tscanf		scanf#define	_ftscanf	fscanf#define	_stscanf	sscanf#define	_fgettc		fgetc#define	_fgettchar	_fgetchar#define	_fgetts		fgets#define	_fputtc		fputc#define	_fputtchar	_fputchar#define	_fputts		fputs#define _tfdopen	_fdopen#define	_tfopen		fopen#define _tfreopen	freopen#define	_tfsopen	_fsopen#define	_tgetenv	getenv#define	_tputenv	_putenv#define	_tsearchenv	_searchenv#define	_tmakepath	_makepath#define	_tsplitpath	_splitpath#define	_tfullpath	_fullpath#define	_gettc		getc#define	_getts		gets#define	_puttc		putc#define _puttchar       putchar#define	_putts		puts#define	_ungettc	ungetc#define	_tcstod		strtod#define	_tcstol		strtol#define _tcstoul	strtoul#define	_itot		_itoa#define	_ltot		_ltoa#define	_ultot		_ultoa#define	_ttoi		atoi#define	_ttol		atol#define	_tcscat		strcat#define _tcschr		strchr#define _tcscmp		strcmp#define _tcscpy		strcpy#define _tcscspn	strcspn#define	_tcslen		strlen#define	_tcsncat	strncat#define	_tcsncmp	strncmp#define	_tcsncpy	strncpy#define	_tcspbrk	strpbrk#define	_tcsrchr	strrchr#define _tcsspn		strspn#define	_tcsstr		strstr#define _tcstok		strtok#define	_tcsdup		_strdup#define	_tcsicmp	_stricmp#define	_tcsnicmp	_strnicmp#define	_tcsnset	_strnset#define	_tcsrev		_strrev#define _tcsset		_strset#define	_tcslwr		_strlwr#define	_tcsupr		_strupr#define	_tcsxfrm	strxfrm#define	_tcscoll	strcoll#define	_tcsicoll	_stricoll#define	_istalpha	isalpha#define	_istupper	isupper#define	_istlower	islower#define	_istdigit	isdigit#define	_istxdigit	isxdigit#define	_istspace	isspace#define	_istpunct	ispunct#define	_istalnum	isalnum#define	_istprint	isprint#define	_istgraph	isgraph#define	_istcntrl	iscntrl#define	_istascii	isascii#define _totupper	toupper#define	_totlower	tolower#define	_tasctime	asctime#define	_tctime		ctime#define	_tstrdate	_strdate#define	_tstrtime	_strtime#define	_tutime		_utime#define _tcsftime	strftime/* Macro functions */ #define _tcsdec     _strdec#define _tcsinc     _strinc#define _tcsnbcnt   _strncnt#define _tcsnccnt   _strncnt#define _tcsnextc   _strnextc#define _tcsninc    _strninc#define _tcsspnp    _strspnp#define _strdec(_str1, _str2) ((_str1)>=(_str2) ? NULL : (_str2)-1)#define _strinc(_str)  ((_str)+1)#define _strnextc(_str) ((unsigned int) *(_str))#define _strninc(_str, _inc) (((_str)+(_inc)))#define _strncnt(_str, _cnt) ((strlen(_str)>_cnt) ? _count : strlen(_str))#define _strspnp(_str1, _str2) ((*((_str1)+strspn(_str1,_str2))) ? ((_str1)+strspn(_str1,_str2)) : NULL)#define _tchmod     _chmod#define _tcreat     _creat#define _tfindfirst _findfirst#define _tfindnext  _findnext#define _tmktemp    _mktemp#define _topen      _open#define _taccess    _access#define _tremove    remove#define _trename    rename#define _tsopen     _sopen#define _tsetlocale setlocale#define _tunlink    _unlink#define _tfinddata_t    _finddata_t#define _tchdir	    _chdir#define _tgetcwd    _getcwd#define _tgetdcwd   _getdcwd#define _tmkdir	    _mkdir#define _trmdir	    _rmdir#define _tstat      _stat#if 1  /* defined __MSVCRT__ *//* Not in crtdll.dll. Define macros anyway? */#define _ttoi64     _atoi64#define _i64tot     _i64toa#define _ui64tot    _ui64toa#define _tcsnccoll  _strncoll#define _tcsncoll   _strncoll#define _tcsncicoll _strnicoll#define _tcsnicoll  _strnicoll#define _tfindfirsti64  _findfirsti64#define _tfindnexti64   _findnexti64#define _tfinddatai64_t _finddatai64_t#define _tstati64   _stati64#define _tstat64    _stat64#endif  /* __MSVCRT__ *//* dirent structures and functions */#define _tdirent	dirent#define _TDIR 		DIR#define _topendir	opendir#define _tclosedir	closedir#define _treaddir	readdir#define _trewinddir	rewinddir#define _ttelldir	telldir#define _tseekdir	seekdir#endif	/* Not _UNICODE *//* * UNICODE a constant string when _UNICODE is defined else returns the string * unmodified.  Also defined in w32api/winnt.h. */#define _TEXT(x)	__TEXT(x)#define	_T(x)		__TEXT(x)#endif	/* Not _TCHAR_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -