Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: merttencito en 29 Marzo 2019, 21:00 PM

Título: Duda Funcion en C
Publicado por: merttencito en 29 Marzo 2019, 21:00 PM
Estoy intentado Agrupar por paises pero tengo un problema, hay veces que no entra correctamente en el if y no entiendo por que puede ser.
Alguna ayuda?



void AgruparAmigos(amigo* lista_amigos, int n_amigos)

    //***************************************************************************
{
        int i;
        char p[]="aaaaaaaaaaaaaaaaaaaaaaa";

        for(i=0;i<n_amigos;i++){

    printf("%d\n",i);
    printf("$$%s$$\n",lista_amigos.direcc.pais);
    printf("$$%s$$\n",p);


      if (strcmp(p,lista_amigos.direcc.pais)==1){

        printf("bucle dentro con %s\n",lista_amigos.direcc.pais);

      }

       else { printf("Son iguales\n"); }

        strcpy(p,lista_amigos.direcc.pais);
        printf("Pais copiado $$%s$$\n",p);

        }

        }
Título: Re: Duda Funcion en C
Publicado por: K-YreX en 29 Marzo 2019, 21:17 PM
Coloca tu código entre etiquetas de código GeSHi (hay un desplegable encima del cuadro de texto) para poder interpretar bien tu código...
Y por qué inicializar <p> así?? :huh:
Título: Re: Duda Funcion en C
Publicado por: CalgaryCorpus en 29 Marzo 2019, 22:27 PM
No compares el resultado de strcmp contra 1, comparalo contra 0. 0 son iguales, distinto de 0, distintos. Mayor que 0. el primer parametro de strcmp es mayor lexicograficamente que el segundo y si es menor que 0 al reves.