Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Date due stringhe dire se sono uguali
- * restituisce 0 se sono uguali, altri valori
- * altrimenti */
- #include <stdio.h>
- #include <stdlib.h>
- int str_uguali(char *stringa1, char *stringa2){
- /* 1)la condizione del while sta ad indicare che il ciclo
- * while continua a girare quando ci sono tutte e due le stringhe
- * che non sono ancora finite. se per caso una delle due stringhe termina
- * non si rientra piu nel while, perche non e' soddisfatta la condizione
- * e quindi subito dopo al while viene restituito il risultato
- * del confronto. attenzione potrebbe succedere che le due stringhe
- * sono uguali e che quindi terminino tutte e due allo stesso tempo,
- * in quel caso cmq non si entra nel ciclo perche a maggior ragione
- * non e soddisfatta la condizione, e quindi viene restituito il
- * risultato del confronto.
- * 2) la seconda condizione invece dice che oltre al fatto che non
- * devono essere finite le due stringhe, bisogna che presi
- * i caratteri dalle due stringhe siano uguali, affinche il controllo
- * possa avanzare.*/
- while((*stringa1 && *stringa2)&&(*stringa1==*stringa2)){
- ++stringa1;//passa alla prossima lettera della stringa1
- ++stringa2;//passa alla prossima lettera della stringa2
- }
- return *stringa1-*stringa2;//ritorna il risultato del confronto , se
- //le due stringhe sono uguali ,verra' ritornato 0, un numero diverso
- //altrimenti
- }
- int main(){
- char str1[]="ale";
- char str2[]="aoe";
- int ris;
- ris=str_uguali(str1,str2);
- printf("%d", ris);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment