Fonctions flottantes
Remonter à Unicode pour C++ - Index
Cette rubrique décrit comment écrire du code portable qui utilise correctement les définitions flottantes des fonctions RTL. La liste des fonctions flottantes est utile pour choisir le variant correct d'une fonction, en particulier en ce qui concerne le type de chaîne par défaut, UnicodeString
.
Exemple d'écriture d'un code portable utilisant _TCHAR
Les fonctions RTL sont disponibles dans les définitions ANSI/MBCS ou Unicode. Par exemple, la fonction RTL strlen
peut être utilisée dans le mode ANSI/MBCS comme suit :
void StorePersonData(const char* name) { PersistToDB(name, strlen(name)); }
Une façon plus portable d'écrire ce code est :
void StorePersonData(const _TCHAR* name) { PersistToDB(name, _tcstrlen(name)); }
Cet exemple suppose que PersistToDB a une version Unicode. Notez que pour les fonctions qui ne vont pas changer ou migrer, vous devriez utiliser char ou wchar_t.
Liste des définitions flottantes de tchar.h
Le tableau suivant est dérivé du fichier d'en-tête tchar.h.
- La colonne char/ANSI liste la version ANSI des fonctions flottantes appropriées quand
_TCHAR
est mappé enchar
. - La colonne wchar_t/UNICODE liste la version UNICODE des fonctions flottantes appropriées quand
_TCHAR
est mappé enwchar_t
. - La colonne _TCHAR/Portable liste la version portable des fonctions flottantes, qui est mappée sur la fonction appropriée (version ANSI ou UNICODE) comme déterminé par le paramétrage en cours de l'option de mappage
Mappage de _TCHAR en
.
Les fonctions recommandées à utiliser dans C++Builder sont celles enumérées dans la colonne _TCHAR/Portable, en liaison avec _TCHAR
(plutôt que char
ou wchar_t
) dans votre code.
Définitions de fonction flottante de tchar.h :
char / ANSI | wchar_t / UNICODE | _TCHAR / Portable |
---|---|---|
_access |
_waccess |
_taccess |
_atoi64 |
_wtoi64 |
_tstoi64 |
_atoi64 |
_wtoi64 |
_ttoi64 |
_cgets |
_cgetws |
cgetts |
_chdir |
_wchdir |
_tchdir |
_chmod |
_wchmod |
_tchmod |
_cprintf |
_cwprintf |
_tcprintf |
_cputs |
_cputws |
_cputts |
_creat |
_wcreat |
_tcreat |
_cscanf |
_cwscanf |
_tcscanf |
_ctime64 |
_wctime64 |
_tctime64 |
_execl |
_wexecl |
_texecl |
_execle |
_wexecle |
_texecle |
_execlp |
_wexeclp |
_texeclp |
_execlpe |
_wexeclpe |
_texeclpe |
_execv |
_wexecv |
_texecv |
_execve |
_wexecve |
_texecve |
_execvp |
_wexecvp |
_texecvp |
_execvpe |
_wexecvpe |
_texecvpe |
_fdopen |
_wfdopen |
_tfdopen |
_fgetchar |
_fgetwchar |
_fgettchar |
_findfirst |
_wfindfirst |
_tfindfirst |
_findnext64 |
_wfindnext64 |
_tfindnext64 |
_findnext |
_wfindnext |
_tfindnext |
_findnexti64 |
_wfindnexti64 |
_tfindnexti64 |
_fputchar |
_fputwchar |
_fputtchar |
_fsopen |
_wfsopen |
_tfsopen |
_fullpath |
_wfullpath |
_tfullpath |
_getch |
_getwch |
_gettch |
_getche |
_getwche |
_gettche |
_getcwd |
_wgetcwd |
_tgetcwd |
_getdcwd |
_wgetdcwd |
_tgetdcwd |
_ltoa |
_ltow |
_ltot |
_makepath |
_wmakepath |
_tmakepath |
_mkdir |
_wmkdir |
_tmkdir |
_mktemp |
_wmktemp |
_tmktemp |
_open |
_wopen |
_topen |
_popen |
_wpopen |
_tpopen |
_putch |
_putwch |
_puttch |
_putenv |
_wputenv |
_tputenv |
_rmdir |
_wrmdir |
_trmdir |
_scprintf |
_scwprintf |
_sctprintf |
_searchenv |
_wsearchenv |
_tsearchenv |
_snprintf |
_snwprintf |
_sntprintf |
_snscanf |
_snwscanf |
_sntscanf |
_sopen |
_wsopen |
_tsopen |
_spawnl |
_wspawnl |
_tspawnl |
_spawnle |
_wspawnle |
_tspawnle |
_spawnlp |
_wspawnlp |
_tspawnlp |
_spawnlpe |
_wspawnlpe |
_tspawnlpe |
_spawnv |
_wspawnv |
_tspawnv |
_spawnve |
_wspawnve |
_tspawnve |
_spawnvp |
_wspawnvp |
_tspawnvp |
_spawnvpe |
_wspawnvpe |
_tspawnvpe |
_splitpath |
_wsplitpath |
_tsplitpath |
_stat64 |
_wstat64 |
_tstat64 |
_stat |
_wstat |
_tstat |
_stati64 |
_wstati64 |
_tstati64 |
_strdate |
_wstrdate |
_tstrdate |
_strdec |
_wcsdec |
_tcsdec |
_strdup |
_wcsdup |
_tcsdup |
_stricmp |
_wcsicmp |
_tcsicmp |
_stricoll |
_wcsicoll |
_tcsicoll |
_strinc |
_wcsinc |
_tcsinc |
_strlwr |
_wcslwr |
_tcslwr |
_strncnt |
_wcsncnt |
_tcsnbcnt |
_strncnt |
_wcsncnt |
_tcsnccnt |
_strncnt |
_wcsncnt |
_tcsnccnt |
_strncoll |
_wcsncoll |
_tcsnccoll |
_strnextc |
_wcsnextc |
_tcsnextc |
_strnicmp |
_wcsnicmp |
_tcsncicmp |
_strnicmp |
_wcsnicmp |
_tcsnicmp |
_strnicoll |
_wcsnicoll |
_tcsncicoll |
_strnicoll |
_wcsnicoll |
_tcsnicoll |
_strninc |
_wcsninc |
_tcsninc |
_strnset |
_wcsnset |
_tcsncset |
_strnset |
_wcsnset |
_tcsnset |
_strrev |
_wcsrev |
_tcsrev |
_strset |
_wcsset |
_tcsset |
_strspnp |
_wcsspnp |
_tcsspnp |
_strtime |
_wstrtime |
_tstrtime |
_strtoi64 |
_wcstoi64 |
_tcstoi64 |
_strtoui64 |
_wcstoui64 |
_tcstoui64 |
_strupr |
_wcsupr |
_tcsupr |
_tempnam |
_wtempnam |
_ttempnam |
_ui64toa |
_ui64tow |
_ui64tot |
_ultoa |
_ultow |
_ultot |
_ungetch |
_ungetwch |
_ungettch |
_unlink |
_wunlink |
_tunlink |
_utime64 |
_wutime64 |
_tutime64 |
_utime |
_wutime |
_tutime |
_vscprintf |
_vscwprintf |
_vsctprintf |
_vsnprintf |
_vsnwprintf |
_vsntprintf |
asctime |
_wasctime |
_tasctime |
atof |
_wtof |
_tstof |
atoi |
_wtoi |
_tstoi |
atoi |
_wtoi |
_ttoi |
atol |
_wtol |
_tstol |
atol |
_wtol |
_ttol |
ctime |
_wctime |
_tctime |
fgetc |
fgetwc |
_fgettc |
fgets |
fgetws |
_fgetts |
fopen |
_wfopen |
_tfopen |
fprintf |
fwprintf |
_ftprintf |
fputc |
fputwc |
_fputtc |
fputs |
fputws |
_fputts |
freopen |
_wfreopen |
_tfreopen |
fscanf |
fwscanf |
_ftscanf |
getc |
getwc |
_gettc |
getchar |
getwchar |
_gettchar |
getenv |
_wgetenv |
_tgetenv |
gets |
getws |
_getts |
isalnum |
iswalnum |
_istalnum |
isalpha |
iswalpha |
_istalpha |
isascii |
iswascii |
_istascii |
iscntrl |
iswcntrl |
_istcntrl |
isdigit |
iswdigit |
_istdigit |
isgraph |
iswgraph |
_istgraph |
islower |
iswlower |
_istlower |
isprint |
iswprint |
_istprint |
ispunct |
iswpunct |
_istpunct |
isspace |
iswspace |
_istspace |
isupper |
iswupper |
_istupper |
isxdigit |
iswxdigit |
_istxdigit |
main |
wmain |
_tmain |
perror |
_wperror |
_tperror |
printf |
wprintf |
_tprintf |
putc |
putwc |
_puttc |
putchar |
putwchar |
_puttchar |
puts |
_putws |
_putts |
remove |
_wremove |
_tremove |
rename |
_wrename |
_trename |
scanf |
wscanf |
_tscanf |
setlocale |
_wsetlocale |
_tsetlocale |
sprintf |
swprintf |
_stprintf |
sscanf |
swscanf |
_stscanf |
strcat |
wcscat |
_tcscat |
strchr |
wcschr |
_tcschr |
strcmp |
wcscmp |
_tcscmp |
strcoll |
wcscoll |
_tcscoll |
strcpy |
wcscpy |
_tcscpy |
strcspn |
wcscspn |
_tcscspn |
strerror |
_wcserror |
_tcserror |
strftime |
wcsftime |
_tcsftime |
strlen |
wcslen |
_tcsclen |
strlen |
wcslen |
_tcslen |
strncat |
wcsncat |
_tcsncat |
strncat |
wcsncat |
_tcsnccat |
strncmp |
wcsncmp |
_tcsnccmp |
strncmp |
wcsncmp |
_tcsncmp |
strncpy |
wcsncpy |
_tcsnccpy |
strncpy |
wcsncpy |
_tcsncpy |
strpbrk |
wcspbrk |
_tcspbrk |
strrchr |
wcsrchr |
_tcsrchr |
strspn |
wcsspn |
_tcsspn |
strstr |
wcsstr |
_tcsstr |
strtod |
wcstod |
_tcstod |
strtok |
wcstok |
_tcstok |
strtol |
wcstol |
_tcstol |
strtoul |
wcstoul |
_tcstoul |
strxfrm |
wcsxfrm |
_tcsxfrm |
system |
_wsystem |
_tsystem |
tmpnam |
_wtmpnam |
_ttmpnam |
tolower |
towlower |
_totlower |
toupper |
towupper |
_totupper |
ungetc |
ungetwc |
_ungettc |
vfprintf |
vfwprintf |
_vftprintf |
vprintf |
vwprintf |
_vtprintf |
vsprintf |
vswprintf |
_vstprintf |
WinMain |
wWinMain |
_tWinMain |