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.

Related Posts

Reverse Geocoding – Ottenere indirizzo o città in iOS

Contare il numero di parole in una stringa NSString

coniglio pasqua

Quando arriva Pasqua? Calcolare la Pasqua in C – Guida e funzioni

code snippet

Usiamo NSUserDefault per salvare dati dell’applicazione

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!