Home / Ansi C - C++ / Invertire una stringa: algoritmo in C

Invertire una stringa: algoritmo in C

Molto spesso ci capita di dover invertire una stringa, per esercizio oppure per ne dobbiamo leggere un file al contrario.

20130209-021540.jpg

Nei moderni linguaggi di programmazione abbiamo una funzione apposita che fa tutto il lavoro per noi.
Andiamo però a vedere in ANSI C come si fa.

Ecco la funzione reverse che rigirerà la stringa ed il relativo main per vedere come richiamarla.

Ad esempio: CIAO diventerà OAIC

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

void reverse(char * stringa)
{
    size_t i,j;
    for(i=0, j=strlen(stringa)-1;i<strlen(stringa)/2;i++, j--)
    {
        char temp=stringa[i];
        stringa[i]=stringa[j];
        stringa[j]=temp;
    }
}

int main(void)
{
    char stringa[]="una stringa di testo di una certa lunghezza";
    reverse(stringa);
printf("%s", stringa);
    return 0;
}

Questo è tutto. Davvero semplice.

About Fabio

Esperienza nella progettazione e sviluppo di Applicazioni mobili. Integro le conoscenze acquisite in ambito accademico con un continuo studio di nuove tecnologie che mi permettano di creare applicazioni sempre più affidabili sicure ed efficienti. Venite a trovarmi sul blog Fabiosoft Google+
Scroll To Top
Si prega di attivare i Javascript! / Please turn on Javascript!

Javaskripta ko calu karem! / Bitte schalten Sie Javascript!

S'il vous plaît activer Javascript! / Por favor, active Javascript!

Qing dakai JavaScript! / Qing dakai JavaScript!

Пожалуйста включите JavaScript! / Silakan aktifkan Javascript!