Convertire una stringa in minuscolo[C]

di il
8 risposte

Convertire una stringa in minuscolo[C]

Salve ragazzi,una domanda davvero sciocca.

Sto facendo un programma dove l'utente deve inserire una stringa e questa
deve essere convertita in minuscolo.La mia idea è quella di utilizzare la funzione tolower(),ma mi chiedevo se esiste
un modo o un'altra funzione per convertire direttamente l'intera stringa ,oppure devo per forze convertire ad uno ad uno ogni
singolo carattere utlizzando magari un for o un while ecc.

8 Risposte

  • Re: Convertire una stringa in minuscolo[C]

    Usa un ciclo for
  • Re: Convertire una stringa in minuscolo[C]

    E' l'unico modo?
  • Re: Convertire una stringa in minuscolo[C]

    Anche con un while
  • Re: Convertire una stringa in minuscolo[C]

    Scusami,forse mi sono espresso male.Cioè si ho capito,utilizzare un for o un while è equivalente.Quello che voglio
    dire è: non esiste una funzione,libreria, che converta "direttamente" l'intera stringa?

    Faccio un esempio che non centra ma rende l'idea.
    Giusto per spiegarmi una stringa può essere "stampata" un carattere alla volta con un for e un'istruzione printf al suo
    interno che a ogni iterazione successiva stampata il singolo carattere successivo, oppure con la funzione puts()
    della libreria <string.h>

    I due metodi fanno esattamente la stessa cosa, ma puts è immediato.
  • Re: Convertire una stringa in minuscolo[C]

    Puts è una funzione al cui interno c'è un ciclo for che visualizza carattere per carattere.

    Non esiste funzione standard già pronta per fare la stessa cosa per il maiuscolo, ma la puoi scrivere tu facilmente.
  • Re: Convertire una stringa in minuscolo[C]

    Capito.Grazie mille
  • Re: Convertire una stringa in minuscolo[C]

    Molti compilatori offrono le funzioni strlwr() e strupr() o altri equivalenti, che tuttavia, come già rimarcato dal nostro ottimo Oregon, non sono parte della libreria standard.
  • Re: Convertire una stringa in minuscolo[C]

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

    int main(int argc, char***argv[])
    {

    /** BASTA AGGIUNGERE 32 al carattere se è MAIUSCOLO per trasformarlo in minuscolo **/

    printf(" 'a' -> in maiuscolo: %c \n", 'a'-32);


    return 0;
    }
Devi accedere o registrarti per scrivere nel forum
8 risposte