Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/05/2012, 17:06
sam90
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: C++ - Posicion de una Subcadena

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.