Underc0de

Programación General => C / C++ => Códigos Fuentes => Mensaje iniciado por: linkgl en Agosto 17, 2011, 12:35:12 PM

Título: Funcion instr o strpos
Publicado por: linkgl en Agosto 17, 2011, 12:35:12 PM
Buenas, supongo que conocen la funcion strpos de PHP y la función instr de vb, bueno para el que no, estas funciones buscan una cadena o string, dentro de otra y devuelven la posición en donde se encontró el primer caracter de la cadena a buscar :P

ejemplo
buscar="hola"
cadena="linkholalink"
strpos(cadena,buscar)
Me debe devolver 5

pues hice esta función en C.

/*
  @Coder: Linkgl
    @Funcion: Instr o StrPos */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//prototipo
int instr(char *cadena,char *necesitada);

//->uso
int main()
{
  int x=instr("linkholalink","hola");
  printf("%d",x);
  getchar();
  return 0;
}

//funcion
int instr(char *cadena,char *necesitada)
{
  int iCadena=strlen(cadena);
  int iNecesitada=strlen(necesitada);
  int i;
  char *temp=(char *)malloc(iNecesitada);
  memset(temp,0,iNecesitada);
  for(i=0;i<iCadena*iNecesitada;i++)
  {
    memcpy(temp,cadena+i,iNecesitada);
    if(strcmp((char *)necesitada,(char *)temp)==0)
    {
      free(temp);
      return i+1;     
    }
  }
  free(temp);
  return -1;
}


PD: Me faltan valores negativos  :-\
Título: Re:Funcion instr o strpos
Publicado por: Ahkbar en Julio 18, 2012, 11:07:15 PM
Ya existe esta función,

http://www.cplusplus.com/reference/clibrary/cstring/strstr/

saludos
Título: Re:Funcion instr o strpos
Publicado por: linkgl en Diciembre 24, 2012, 08:03:40 PM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Ya existe esta función,

http://www.cplusplus.com/reference/clibrary/cstring/strstr/

saludos

JA. En aquel entonces podría jurar que la busqué en cplusplus y sólo encontré strtok y no me valía igual, pero toda la razón. Saludos
Título: Re:Funcion instr o strpos
Publicado por: Pr0ph3t en Diciembre 24, 2012, 08:09:10 PM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Ya existe esta función,

http://www.cplusplus.com/reference/clibrary/cstring/strstr/

saludos

Hostia linkgl, ¿vuelves al foro?
JA. En aquel entonces podría jurar que la busqué en cplusplus y sólo encontré strtok y no me valía igual, pero toda la razón. Saludos
Título: Re:Funcion instr o strpos
Publicado por: linkgl en Diciembre 24, 2012, 08:16:13 PM
Haha estuve fuera de todo esto un buen rato, pero cualquier cosilla ya andamos aquí.  :o