#include <ctype.h> // <cctype> en C++
int toupper( int character );
Cette fonction permet de convertir une lettre minuscule en lettre majuscule. Rappel : cette conversion dépend de la localisation courante. Dans la localisation "C", seules les lettres non accentuées de l'alphabet latin sont transformées.
int car la fonction peut aussi accepter la valeur -1 (EOF - End Of File) correspondant à la fin d'un
flux.
Cette fonction retourne le caractère équivalent transformé en majuscule, si le caractère passé en paramètre était une minuscule. Si le caractère passé n'était pas une minuscule,
alors la fonction retourne le caractère inchangé. Le résultat doit bien entendu être considéré en tant que unsigned char, néanmoins la fonction peut -1
si EOF a été fourni en paramètre.
#include <ctype.h> #include <stdio.h> #include <stdlib.h> #include <string.h> char * strtoupper( char * dest, const char * src ) { char * result = dest; while( *dest++ = toupper( *src++ ) ); return result; } int main() { char * input = "Diego De La Vega"; char result[17]; printf( "Result: %s\n", strtoupper( result, input ) ); return EXIT_SUCCESS; }
Note : il est dommage que la fonction strtoupper proposée dans cet exemple ne soit pas fournie en standard par la librairie C.
Voici un petit exemple d'exécution de ce programme :
$> gcc -o Sample Sample.c $> ./Sample Result: DIEGO DE LA VEGA $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :