• Miércoles 6 de Noviembre de 2024, 18:32

Autor Tema:  No Me Funciona Un Contador  (Leído 1457 veces)

mnv_19

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
No Me Funciona Un Contador
« en: Jueves 26 de Abril de 2007, 20:38 »
0
Hola,
  Tengo un programa al que paso como argumentos un fichero que contiene palabras sensibles y otros ficheros que contienen cartas en las que debo buscar dichas palabras sensibles.
el programa consiste en mostrar las palabras sensibles(almacenadas en una lista enlazada) junto con el numero de linea y el nombre del fichero donde se encuentran.
Ahora bien, cuando creo un contador en el programa principal para contar el numero de palabras que se han encontrado y se lo paso a la funcion donde localiza las palabras que coinciden, al devolver el valor de dicho contador siempre aparece el valor de inicializacion existiendo palabras que coinciden.
¿A que se puede deber?
Gracias de antemano, saludos. :rolleyes:
"Los verdaderos programadores no hablan de su código. Fue difícil escribirlo, y aun mucho mas entenderlo."

"Los ordenadores no son inteligentes. Solo creen que lo son."

hano

  • Miembro activo
  • **
  • Mensajes: 87
    • Ver Perfil
Re: No Me Funciona Un Contador
« Respuesta #1 en: Jueves 26 de Abril de 2007, 20:45 »
0
                                                                                               
Para programadores
http]
[url=https://hardprogrammer.blogspot.com]https]

mnv_19

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
Re: No Me Funciona Un Contador
« Respuesta #2 en: Jueves 26 de Abril de 2007, 20:52 »
0
Ya lo he intentado de esa manera, pero me da un error diciendome que un entero no se puede pasar asi, que es necesario hacer un casting, por eso habia descartado esa forma.
¿Como se haria?
"Los verdaderos programadores no hablan de su código. Fue difícil escribirlo, y aun mucho mas entenderlo."

"Los ordenadores no son inteligentes. Solo creen que lo son."

mnv_19

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
Re: No Me Funciona Un Contador
« Respuesta #3 en: Jueves 26 de Abril de 2007, 20:53 »
0
El programa esta escrito en C
"Los verdaderos programadores no hablan de su código. Fue difícil escribirlo, y aun mucho mas entenderlo."

"Los ordenadores no son inteligentes. Solo creen que lo son."

hano

  • Miembro activo
  • **
  • Mensajes: 87
    • Ver Perfil
Re: No Me Funciona Un Contador
« Respuesta #4 en: Jueves 26 de Abril de 2007, 21:17 »
0
Pues no sé, comparte el código y el error que da....
                                                                                               
Para programadores
http]
[url=https://hardprogrammer.blogspot.com]https]

mnv_19

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
Re: No Me Funciona Un Contador
« Respuesta #5 en: Jueves 26 de Abril de 2007, 21:38 »
0
struct sensibles{
  char palabra[50];
  struct sensibles *sig;
  struct coincidencia *coin;
};

struct coincidencia{
  char nfich[50];
  int numerolinea;
  struct coincidencia *sig;
};
____________

int InsertarSensibles(struct sensibles **lista,struct sensibles *nueva,int cont){
  struct sensibles *aux;
  if((*lista)==NULL)
    *lista=nueva;
  else{
    aux=*lista;
    while(aux->sig!=NULL) {
      aux=aux->sig;
      cont++;
    }
    aux->sig=nueva;
 }
  return(cont);
}

___________________________________________

EN EL MAIN:

InsertarSensibles(&lista,nueva,contador);
printf("%d",contador);

EL ERROR QUE ME DA SIN PASARLO POR REFERENCIA ES QUE AL MOSTRARLO TE MUESTRA EN LO QUE TIENES INICIALIZADO.
"Los verdaderos programadores no hablan de su código. Fue difícil escribirlo, y aun mucho mas entenderlo."

"Los ordenadores no son inteligentes. Solo creen que lo son."

SteelX

  • Miembro MUY activo
  • ***
  • Mensajes: 218
    • Ver Perfil
Re: No Me Funciona Un Contador
« Respuesta #6 en: Jueves 26 de Abril de 2007, 23:21 »
0
Código: Text
  1.  
  2. int InsertarSensibles(struct sensibles **lista,struct sensibles *nueva,int cont)
  3.  
  4.  

por
Código: Text
  1.  
  2. int InsertarSensibles(struct sensibles **lista,struct sensibles *nueva,int &cont)
  3.  
  4.  

la variable es la que vas a recibir por referencia.


si retornas el contador porque no recibirlo en un entero??

Código: Text
  1.  
  2. int cont InsertarSensibles(&lista,nueva,contador);
  3. printf("%d",cont);
  4.  
  5.  
Inside the code