Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2011, 15:24
AXLAV
 
Fecha de Ingreso: febrero-2011
Mensajes: 55
Antigüedad: 13 años, 9 meses
Puntos: 3
Función propia para comparar cadenas en C

Hola, buenas tardes queridos programadores, quería preguntarles ya que tengo una duda.
Incialmente sería.
Declarar dos char, con un máximo de 10 letras cada uno, y no usar la función de string comparate, sino, crear la mía.
Sería algo más o menos así:

Código:
char a[10], b[10];

    printf("Ingrese el nombre de A:");
    scanf("%s",a);

    printf("Ingrese el nombre de B:");
    scanf("%s",b);

    equals(a,b);//nombre de la función de tipo void.

    return 0;
y la función sería asi:

Código:
void equals(char a, char b)
{

int i,z=0;

for(i=1;i<10;i++)
{
if (a[i]==b[i])
z+=0;
else
z+=1;
}

if (z>0)
printf("Son desiguales");
else
printf("Son desiguales");
Yo pensaba manejar los char como si fueran arrays comparando a[1] con b[1] y así con cada letra de cada palabra, si eran iguales sumaba 0 a Z y sino 1, y dsps la comprobación final es que si z es mayor que 0, ya significa que no son iguales y mostrar el resultado.
Y no me funciona porque como que me dice que los char, no son punteros por así decirlos, porque también probe printf("%s",a[2]); y no me mostró nada.
Agradecería mucho su ayuda.
Saludos !.