Fonction tolower

Entête à inclure

#include <ctype.h>  // <cctype> en C++

Fonction tolower

int tolower( int character );

Cette fonction permet de convertir une lettre majuscule à une lettre minuscule. Rappel : les fonctions de cette librairie ne traitent que les caractères purs ASCII. Les lettres accentuées ne seront donc pas considérées comme des caractères alpha-numériques.

Paramètre

  • character : le caractère à convertir. Il est sur-typé par int car la fonction peut aussi accepter la valeur -1 (EOF - End Of File) correspondant à la fin d'un flux.

Valeur de retour

Cette fonction retourne le caractère équivalent transformé en minuscule, si le caractère passé en paramètre était une majuscule. Si le caractère passé n'était pas une majuscule, 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é fournit en paramètre.

Exemple de code

#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char * strtolower( char * dest, const char * src ) {
    char * result = dest;
    while( *dest++ = tolower( *src++ ) );
    return result;
}

int main() {

    char * input = "Diego De La Vega";
    char result[17];

    printf( "Result: %s\n", strtolower( result, input ) );

    return EXIT_SUCCESS;
}

Note : il est dommage que la fonction strtolower proposée dans cette exemple ne soit pas fourni 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
$>

Sujets connexes

isalnum
isalpha
isblank
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
toupper