• Lunes 23 de Diciembre de 2024, 03:21

Autor Tema:  Re: Buscar Funciones en un archivo .c o .h  (Leído 2131 veces)

radarman

  • Miembro activo
  • **
  • Mensajes: 38
    • Ver Perfil
Re: Buscar Funciones en un archivo .c o .h
« en: Jueves 20 de Marzo de 2003, 16:22 »
0
Hola a tod@s otra vez,

a ver estoy implementando un programa que me tiene primero que buscar todos los archivos C y H, que esten en la carpeta que se le indique, bien eso ya lo tengo junto con que me cree una estructura dinamica con los datos que le pido.

Pero ahora tengo que abrir todos los archivos que he encontrado y leerlos para buscar las funciones que tengan todos definidas, donde estan definidas, donde se usan, ..., mi problema es que consigo leer el archivo, pero no me encuentra nada.

Lo que hago (segun yo, porque luego no lo hace), es leer hasta que me encuentro con un "n", un "{" o un ";", y lo introduzco todo en un array, y luego lo ocmpraro con otro array, que se supene es donde mas tarde definire como deben de ser la funciones, por ahora me busca defines o cosas asi, pero el caso es que siempre me carga solo un carater, y no se donde puede estar el fallo.

Si alguien sabe como hacerlo otiene algun ejemplo se lo agradeceria mucho.

Muchas gracias a todos por vuestra ayuda.

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Buscar Funciones en un archivo .c o .h
« Respuesta #1 en: Viernes 21 de Marzo de 2003, 15:38 »
0
seria de mucha ayuda que pudieramos er el codigo. :lightsabre:
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

Arleko

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
    • http://www.mundoarleko.vze.com
Re: Buscar Funciones en un archivo .c o .h
« Respuesta #2 en: Domingo 23 de Marzo de 2003, 01:28 »
0
Me facilitarias el trabajo pasandome tu codigo.
:fire:

radarman

  • Miembro activo
  • **
  • Mensajes: 38
    • Ver Perfil
Re: Buscar Funciones en un archivo .c o .h
« Respuesta #3 en: Miércoles 26 de Marzo de 2003, 12:45 »
0
Aqui os dejo el programa que estoy haciendo, esta en aleman, pero esüpero que no ea problema, si lo fuese decirmelo y lo traduzco y lo vuelvo a subir, os explico:

Se supone que este programa me busca en la carpeta que le indique al ejecutarlo todos los archivos C y H de la carpeta en cuestion.

Luego me construye una lista dinamica, y el problema gordo viene ahi, cuando quiero ver los datos que tengo en esa lista no la primera vez en el modulo donde me cnostruye la lista me lo imprime por pantalla correctamente, pero cuando hgo lo mismo al final del programa, con el nombre del archivo hay problemas me escribe lo que el quiere.

He mirado si era un problema de direcciones de memoria pero eso no es, y la verdad lelvo dos dias y no se donde puede estar el problema os agradeceria que me ayudarais.

Espero que no sea un problema que este en aleman, esta asi ya que estoy en Alemania haciendo unas practicas, y si no soluciono este error no puedo seguir asi que es muy importante que encuentre el fallo.

A ver una pekeña traduccion:

Los nombre de las funciones son:

FindenDatei: ahi es donde abro la carpeta y busco los archivos, si encontrase otra carpeta vuelvo otra vez pero ahora ocn el nombre de lacarpeta que encontre.

EinfuegenElementDateiListe: aqui es donde segun yo construyo mi magifica lista, pero da problemas como he dicho.

LoescheDateiListe: este modulo es para borrar la memoria que he ocupado al principio.

EndeDateiListe: esto es para colocarme al final de la lista.

AnfangDateiListe: para ir al principio de la lista.

ConCat: para construir todo el path (o sea c:......) que vaya encontrando para entrar en todas las subcarpetas que tenga la carpeta que he escrito al principio.

Ordner: para saber si es un nombre de archivo o de carpeta.

Suffix: para ver que extension tiene, solo me interesan las extensiones C y H.

UpCase: para que de igual si eta en mayusculas o minusculas escrito.

Bueno esto creo que es lo mas dificil, el resto al verad es ke e parecido al epañol.

Al imprimir por pantalla lo de Voher es el apuntador al elemento anterior, a el Nacher es el apuntador para el elemento siguiente.

Otra duda que tengo es si alguien me podria decir como ahcerl a rutina para por ejemplo pulsando ESC no tenga que esperar a que se ejecute todo el programa.
Muchas gracias a todos.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Buscar Funciones en un archivo .c o .h
« Respuesta #4 en: Miércoles 26 de Marzo de 2003, 17:20 »
0
:alien:
sinceramente...
muy pocas veces he podido ver un codigo tan horrible... y no lo digo porque este mal programado...
para nada, sino porque sumado a la dificultad "sicologica" del idioma ...ese codigo esta repleto de garabatos y de vueltas innecesarias, como por ejemplo esto:

 
Código: Text
  1.  
  2. /*~E:A3*/
  3. /*~A:4*/
  4. /*~+:Konstanten*/
  5. /*~T*/
  6. #define Zeilenende   ''
  7. #define Punkt        0x2E
  8. #define Buchstabe_C  0x43
  9. #define Buchstabe_H  0x48
  10. #define Klammer      0x7B
  11. #define Semikolon    0x3B
  12. #define LineFeed     0x0A
  13. #define Escape       0x1B
  14. char Backslash[2] =  {0x5C, Zeilenende};
  15.  
  16. /*~E:A4*/
  17. /*~A:5*/
  18. /*~+:Funktionen*/
  19. /*~T*/
  20.  
  21.  
  22.  

No creo que sea màs practico escribir
#define Semikolon    0x3B
y despues invocar Semikolon    , a solo escribir ','... no crees?..., ademas, pues me perdonas por la ignorancia pues tal vez no conozca, pero que le aporta al codigo o a la documentacion del programa esto:

/*~E:A1*/
/*~A:2*/

si se quiere representar algo, no creo que sea la manera mas efectiva de hacerlo .

En fin.  la verdad si me gustaria ayudarte , pero seria muy util que nos enviaras una version del codigo que tu hayas modificado y depurado para hacerle más entendible.

:lightsabre:
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

desorden

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Re: Buscar Funciones en un archivo .c o .h
« Respuesta #5 en: Miércoles 26 de Marzo de 2003, 23:07 »
0
Hola radarman, ¿también por aquí?:)

No estoy muy seguro, pero creo que el problema se encuentra en cómo pasas los parámetros a la función EinfuegenElementDateiListe: lo haces por valor, cuando deberías hacerlo por referencia.

Otra solución es que la función devuelva un puntero a un elemento de la lista, así ya podrías recorrerla.

Adjunto un código que crea una lista doblemente enlazada y que intenta parsear las líneas de un fichero para buscar "algunas" funciones. El problema que planteas es más complicado de lo que parece, por lo menos para mí.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
desorden

radarman

  • Miembro activo
  • **
  • Mensajes: 38
    • Ver Perfil
Re: Buscar Funciones en un archivo .c o .h
« Respuesta #6 en: Jueves 27 de Marzo de 2003, 08:48 »
0
Hola Juak esos simbolos raros los escribe el programa ke usa para programar, es el X32, y programas por blokes, entonces al paarlo a otro entorno sale todas esas cosa de /*~E:A4*/, pero eso no es codigo en si. Voy a ver si lo puedo subir sin nada de eso.

Lo de los defines lo hice asi porke me parecio mas ordenado e interesante.

Buenas desorden, pues si ya ves aki tambien, lo ke pasa es ke no se si se puede en el otro foro subir los programas como en este o hay ke escribirlos, hasta los he escrito siempre.

Gracias por el programa, creo ke me va a servir mas adelante para buscar las funciones, pero todavia no he lelgado ahi, estoy intentando encontrar el problema en la lista, lo de las funciones viene despues, pero gracias de nuevo.

Un saludo a todos.

radarman

  • Miembro activo
  • **
  • Mensajes: 38
    • Ver Perfil
Buscar Funciones en un archivo .c o .h
« Respuesta #7 en: Jueves 27 de Marzo de 2003, 15:17 »
0
Hola a todos. aqui teneis el programa traducido, la pega ocn el programa traducido al compilar me da unos errores que no me da cuando lo compilo en aleman (no creo que sea el idioma :think:) me da errores en la definicion de la estrucutra, en la funcion carpteta y al final, donde todo es comentario, no se me estoy deseperando poco a poco:argh:.

Al grano, se supone que este programa busca archivos con extension C y H, al final en la aclaracion espongo el problema que me da, si alguien me lo uede resolver el estaria eternamente agradecido.

Un saludo a todos.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.