Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/05/2012, 11:39
alejandrosevenfold
 
Fecha de Ingreso: mayo-2012
Mensajes: 3
Antigüedad: 12 años
Puntos: 0
Respuesta: C++ - Posicion de una Subcadena

Cita:
Iniciado por sam90 Ver Mensaje
Se me acaba de ocurrir esto, fijate si funciona:

Código C:
Ver original
  1. int comparar(char ora1[100], char ora2[100], int x){
  2. char * c;
  3. if ( c =  strstr(ora1,ora2)) return (c - ora1) ;
  4. else return -1
  5.  
  6. }

strstr devuelve un puntero a la posicion donde empieza el primer caracter si encontro la cadena...simplmente lo que hacemos es restar esa posicion de memoria con la inicial de la cadena principal..

Por ejemplo, supongamos que la cadena principal empieza en la direccion 1000. Y el strstr te devuelve que la cadena que buscabas esta en la direccion 1005. Entonces 1005 - 1000 = 5 asi qe esta en la posicion 5...

Saludos.
esta muy muy bien, me gustaria que el programa regrese la posicion de la palabra y no del caracter, pero esto esta muy bien... Gracias