[C con Clase] Ayuda comparaciones de cadenas

Steven Davidson steven en conclase.net
Mar Jul 10 01:20:34 CEST 2007


Hola Rodolfo,

El pasado 2007-07-09 22:57:46, rodolfo escribió:

r> Hola Steven.-
r> Revisando los correos encontré esta repuesta que le dabas a Isauro
r> >
r> >char *ptr = strstr( acepta, compara );
r> >
r> >if( !ptr )
r> >   cout << "No se encontró \"" << compara << "\" en \"" << acepta << 
r> >"\"\n";
r> >else
r> >   cout << "Se encontró \"" << compara << "\" en \"" << acepta << "\"\n"
r> >           "a partir del índice " << (ptr-compara) << endl;
r> ¿ que se supone que muestra (ptr-compara), un numero que muestra la 
r> diferencia de dos direcciones ?
r> porque yo crei que era la posición de comienzo de la cadena "hola" dentro de 
r> la otra cadena, pero no es asi.

Quería mostrar el índice al comienzo de la subcadena encontrada usando la diferencia de punteros. Sin embargo, ahora que lo veo, me equivoqué de puntero. La sentencia debería haber sido:

cout << "Se encontró \"" << compara << "\" en \"" << acepta << "\"\n"
        "a partir del índice " << (ptr-acepta) << endl;


Gracias por el aviso.

Steven


Más información sobre la lista de distribución Cconclase