Freigeben über


to-Funktionen

Jedes der bis-Funktionen und des zugeordneten Makros konvertiert ggf. ein einzelnes Zeichen zu einem anderen Zeichen.

__toascii

toupper, _toupper, towupper

tolower, _tolower, towlower

 

Hinweise

Die bis-Funktionen und die Makrokonvertierungen sind wie folgt.

Routine

Makro

Beschreibung

__toascii

__toascii

Konvertiert c auf ASCII-Zeichen

tolower

tolower

Konvertiert c in Kleinbuchstaben, bei Bedarf

_tolower

_tolower

Konvertiert c in Kleinbuchstaben

towlower

Kein

Konvertiert c in den entsprechenden Breitzeichenkleinbuchstaben

toupper

toupper

Konvertiert c in einen Großbuchstaben konvertiert, bei Bedarf

_toupper

_toupper

Konvertiert c in Großbuchstaben

towupper

Kein

Konvertiert c zum entsprechenden Breitzeichengroßbuchstaben

Um die Funktionsversionen der bis Routinen zu verwenden die auch als Makros, entweder definierten entfernen Sie die Makrodefinitionen mit #undef-Direktive oder schließen Sie nicht CTYPE.H. ein. Wenn die Compileroption /Za- verwenden, verwendet der Compiler die Funktionsversion von toupper oder tolower. Deklarationen der Funktionen toupper und tolower sind in STDLIB.H.

Die Routine __toascii legt die abgesehen niedrigwertigen 7 Bits von c auf 0 fest, sodass der konvertierte Wert ein Zeichen im ASCII-Zeichensatz darstellt. Wenn c bereits ein ASCII-Zeichen darstellt, ist c unverändert.

Die Routinen tolower und toupper:

  • Stellen Sie in der Kategorie LC_CTYPE des aktuellen Gebietsschemas abhängig (tolower ruft isupper auf und toupper ruft islower) auf.

  • Konvertieren Sie c, wenn c einen konvertierbaren Buchstaben des entsprechenden Umwandlung im aktuellen Gebietsschema darstellt und der entgegengesetzte Fall für dieses Gebietsschema vorhanden ist. Andernfalls ist c unverändert.

Die Routinen _tolower und _toupper:

  • Im gebietsschemaunabhängige, viel höhere Versionen von tolower und toupper.

  • Kann verwendet werden, wenn isascii(c) und isupper(c) bzw. islower(c) ungleich 0 (null) sind.

  • Haben der Ergebnisse undefiniert, wenn c kein ASCII-Buchstabe des entsprechenden Arguments zur Konvertierung ist.

Die Funktionen towlower und towupper Geben einer konvertierten Kopie von c wenn zurück und wenn beiden folgenden Bedingungen ungleich 0 (null) sind. Andernfalls ist c unverändert.

  • c ist ein Breitzeichen des entsprechenden Umwandlung (das heißt, für welches, iswupper oder iswlower, bzw., nicht 0 ist).

  • Es ist ein entsprechendes Breitzeichen des Zielfalles, also für, welche iswlower oder iswupper, bzw., nicht 0 ist).

Beispiel

// 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>

char msg[] = "Some of THESE letters are Capitals.";
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 );
   }
}
  

Siehe auch

Referenz

Datenkonvertierung

Locale

is- und isw-Routinen