Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Každá funkce to a přidružené makro (pokud existuje) převede jeden znak na jiný znak.
__toascii
tolower, , _tolowertowlower
toupper, , _touppertowupper
Poznámky
Funkce to a převody maker jsou následující.
| Rutina | Makro | Popis |
|---|---|---|
__toascii |
__toascii |
c Převede na znak ASCII. |
tolower |
tolower |
V případě potřeby převede na malá písmena c . |
_tolower |
_tolower |
Převede na malá písmena c . |
towlower |
Nic | c Převede na odpovídající malá písmena širokého znaku. |
toupper |
toupper |
V případě potřeby převede na velká písmena c . |
_toupper |
_toupper |
Převede na velká písmena c . |
towupper |
Nic | Převede c na odpovídající velké písmeno s velkými znaky. |
Chcete-li použít verze to funkcí rutin, které jsou také definovány jako makra, odeberte definice makra direktivami #undef nebo nezahrnují CTYPE.H. Pokud použijete možnost /Za compiler, kompilátor používá verzi toupper funkce nebo tolower. Deklarace funkcí toupper tolower jsou v STDLIB.H.
Rutina __toascii nastaví 7 bitů 7 bitů c až 0, aby převedená hodnota představovala znak v znakové sadě ASCII. Pokud c už znak ASCII představuje, c nezmění se.
Rutinytolower:toupper
- Závisí na
LC_CTYPEkategorii aktuálního národního prostředí (tolowervoláníisupperatouppervoláníislower). - Převést
c, pokudcpředstavuje převodní písmeno příslušného případu v aktuálním národním prostředí a opačný případ existuje pro toto národní prostředí.cV opačném případě se nezmění.
Rutiny_tolower:_toupper
- Jsou nezávislé na národním prostředí, mnohem rychlejších verzích
tolowera toupperu. - Lze použít pouze v případě, že isascii(
c) a buď isupper(c) nebo islower(c), v uvedeném pořadí, jsou nenulové. - Nedefinované výsledky, pokud
cse nejedná o písmeno ASCII odpovídajícího případu pro převod.
towupper Funkce towlower vrátí převedenou kopiic, pokud jsou obě následující podmínky nenulové. c V opačném případě se nezmění.
cje široký charakter příslušného případu (to znamená, že pro kterýiswuppernebo iswlower, v uvedeném pořadí, je nenulový).- Existuje odpovídající široký znak cílového případu (to znamená, že pro který
iswlowernebo iswupper je nenulový).
Příklad
// crt_toupper.c
/* This program uses toupper and tolower to
* analyze all characters between 0x0 and 0x7F. It also
* applies _toupper and _tolower to any code in this
* range for which these functions make sense.
*/
#include <ctype.h>
#include <string.h>
#include <stdio.h>
char msg[] = "Some of THESE letters are Uppercase.";
char *p;
int main( void )
{
printf( "%s\n", msg );
/* Reverse case of message. */
for( p = msg; p < msg + strlen( msg ); p++ )
{
if( islower( *p ) )
putchar( _toupper( *p ) );
else if( isupper( *p ) )
putchar( _tolower( *p ) );
else
putchar( *p );
}
}
Some of THESE letters are Uppercase.
sOME OF these LETTERS ARE uPPERCASE.