Tanto per mostrare ecco una funzione che misura la lunghezza e confronta due stringhe:
codice:
int compare(const char *s1, const char *s2)
{
//due interi
    int len1,len2;
//due puntatori
    char *p1 = s1, *p2 = s2;
//Traduzione:
//Finchè in carattere puntato da p1 è un valore vero (*p1)
//cioè non è '\0', il carattere che termina la stringa
//incrementa l'indirizzo a cui punta p1 (p1++) , in modo da puntare
//al carattere successivo
//ed incrementa la lunghezza di un carattere
//
//NOTA:
//Per accorciare e far diventare + illeggibile,
//ho combinato *p1 con p1++ formando *p1++
    while(*p1++) len1++;
//Idem per p2
    while(*p2++) len2++;

//ok ora ho trovato la lunghezza  :sexpulp: 

//reinizializzo i puntatori
    p1 = s1; p2 = s2;
//Finchè non termina almeno una stringa (operatore AND)
    while (*p1++ && *p2++)
    {
        if(*p1 < *p2) {
//la stringa 1 è la minore
            return -1;
        }
        else if(*p1 > *p2) {
            return 1;
        }
    }
    if (len1 < len2) {
        //Se la stringa 1 è più corta, allora è minore
        return -1;
    }
    else if(len1 > len2){
        return 1;
    }
    else {
//sono incredibilmente UGUALI!!!
        return 0;
    }
}