Floating-Funktionen
Nach oben zu Unicode für C++ - Index
Dieses Thema beschreibt, wie portierbarer Code geschrieben wird, der Floating-Definitionen von RTL-Funktionen verwendet. Die Liste der Floating-Funktionen dient der Auswahl der korrekten Variante einer Funktion besonders, wenn Sie den Standard-String-Typ UnicodeString
verwenden.
Beispiel für das Schreiben von portierbarem Quelltext mit _TCHAR
RTL-Funktionen stehen entweder als ANSI/MBCS- oder Unicode-Definitionen zur Verfügung. Zum Beispiel kann die RTL-Funktion strlen
im ANSI/MBCS-Modus folgendermaßen verwendet werden:
void StorePersonData(const char* name) { PersistToDB(name, strlen(name)); }
Eine portierbarere Version des Quelltextes lautet:
void StorePersonData(const _TCHAR* name) { PersistToDB(name, _tcstrlen(name)); }
Dieses Beispiel geht davon aus, dass PersistToDB eine Unicode-Version hat. Bitte beachten Sie, dass Sie für Funktionen, die nicht geändert werden oder in die Wide-Version übergehen sollen, entweder char oder wchar_t verwenden sollten.
Liste der Floating-Definitionen aus tchar.h
Die folgende Tabelle stammt aus der Header-Datei tchar.h.
- Die Spalte char/ANSI führt die ANSI-Version der Floating-Funktionen auf, die geeignet sind, wenn
_TCHAR
aufchar
gesetzt wird. - Die Spalte wchar_t/UNICODE führt die UNICODE-Version der Floating-Funktionen, die geeignet sind, wenn
_TCHAR
aufwchar_t
gesetzt wird. - Die Spalte _TCHAR/Portierbar enthält die portierbare Version der Floating-Funktionen, die die geeignete Funktion (die ANSI- oder die UNICODE-Version) zuordnet, je nach der aktuellen Einstellung der Option
_TCHAR entspricht
.
Die empfohlenen Funktionen, die in C++Builder verwendet werden können, sind diese, die in der Spalte _TCHAR/Portable aufgeführt sind. Sie sind eng mit dem Verwenden von _TCHAR
(anstatt mit char
oder wchar_t
) in Ihrem Code gekoppelt.
Floating-Funktionsdefinitionen aus tchar.h:
char / ANSI | wchar_t / UNICODE | _TCHAR / Portierbar |
---|---|---|
_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 |