Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/04/2009, 01:39
druha
 
Fecha de Ingreso: marzo-2009
Mensajes: 16
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Buscar char en vector [C++]

Tendrías que postear también las declaraciones de variables, sobre todo de vector, porque el fallo depende de lo que sean. En principio, si "vector" no es un objeto y es un simple vector de char tipo C, simplemente con hacer esto ya lo tienes:

Código:
cout<<"Ingrese nombre alumno a eliminar:"<<endl;;
cin>>nom;
n=n-1;
buscar(nom,vector);
Lo de pasarle el índice a vector en la llamada también es un poco raro, si no es un vector de múltiples cadenas estaría mal.:

Luego, para comparar las cadenas creo que ni en C++ se podía usar ==. Yo usaría la función strstr, que te devuelve un puntero a la primera ocurrencia de la cadena que estás buscando. Simplemente quedaría así:

Código:
char *buscar(char nombus, char vector[])
{
     return strstr(vector,nombus);
}
Si en lugar de un puntero quieres que te devuelva un índice, hazlo así:

Código:
int buscar(char nombus, char vector[])
{
     char *res=strstr(vector,nombus),*iter=vector;
     int indice=0;
     if(res==NULL) return -1;
     while(res!=iter) {
          indice++;
          iter=iter+1;
     }
     return indice;
}