Programación General > C/C++
Re: TAD
mabrev:
Hola:
El fichero .h no se compila, al hacer referencia a él en el .c ya se encarga el compilador de hacer lo que debe con él.
En el fichero .h debes poner (al menos) los tipos a los que vas a utilizar desde el .c que lo referencia, ya que si lo haces directamente en el .c creo que no son accesibles desde otros programas.
Ahora mismo no recuerdo las opciones para compilar con el gcc, aunque puede que puedas compilar primero el .c asociado al .h, y después (sin borrar el .o) compilar el fichero en que se utiliza el .h. De todas formas esta tarde me aseguro y te lo digo.
Espero que te sea de utilidad.
Saludos.
T-Mac:
HOLA !!!! soy nuevo en este foro, y tambien el el leguaje C
weno, quiero pedir ayuda, para una practica q tengo q entregar sobre TADs
y la verdadm no tengo ni idea...
weno lo q tengo q hacer es:
un programa en c q me permita "hacer un lista de alumnos matriculados en varios seminarios organizado la Facultad de fisica, dicha lista contiene los datos personales del alumno (nombre,apallidos y DNI) y el seminario en el q esta matriculado y estara implementada en una lista simplemente enlazada usando los codigos disponibles para este TAD.
se trata de realizar un programa q parmita procesar los siguientes:
* introducir elementos en la lista
* Borrar un alumno de la lista dado su DNI
* Listar todos los alumnos matriculados en un determinado seminario
*introducir elementos en la lista de forma ordenada, utilizando como indice el DNI (opcional)"
esto es todo, espero q alguien me pueda ayudar, por q stoy desesperado
:( , gracias y un saludo a to2
QliX=D!:
--- Cita de: "© Jonathan ©" --- Creo haber entendido, es algo similar a una libreria dinamica (DLL).
Si necesitas elaborar una libreria yo te puedo ayudar. Bueno, con la ayuda que aporto mabrev espero hallas eliminado tus dudas. Saludos :hola:
--- Fin de la cita ---
No, no es ni remotamente parecido.
un TAD es una estructura funcional basica de programacion como lo son las listas, pilas, colas, etc, en si, son tipos como el int, char, etc, pero que hacen mas referencia a tipos estructurados como un nodo de una lista, y esas cosas.
QliX=D!:
--- Cita de: "T-Mac" --- HOLA !!!! soy nuevo en este foro, y tambien el el leguaje C
weno, quiero pedir ayuda, para una practica q tengo q entregar sobre TADs
y la verdadm no tengo ni idea...
weno lo q tengo q hacer es:
un programa en c q me permita "hacer un lista de alumnos matriculados en varios seminarios organizado la Facultad de fisica, dicha lista contiene los datos personales del alumno (nombre,apallidos y DNI) y el seminario en el q esta matriculado y estara implementada en una lista simplemente enlazada usando los codigos disponibles para este TAD.
se trata de realizar un programa q parmita procesar los siguientes:
* introducir elementos en la lista
* Borrar un alumno de la lista dado su DNI
* Listar todos los alumnos matriculados en un determinado seminario
*introducir elementos en la lista de forma ordenada, utilizando como indice el DNI (opcional)"
esto es todo, espero q alguien me pueda ayudar, por q stoy desesperado
:( , gracias y un saludo a to2
--- Fin de la cita ---
No me parece logico que te tengamos que solucionar el problema aca, por que en la forma en que lo escribis pareceria que pretendes qeu te hagamos el codigo y lo pongamos aca, si se supone que estas estudiadno estudie y resuelvalo como todo un señor!.
Ahora si queres una mano, si, pero si no tenes ni la mas remota idea de nada, te diria que estes mas metido en las clases para poder comprender los conceptos.
Pregunta puntual y la contesto sin problemas :D
slds.
QliX=D!:
--- Cita de: "Nagisa" --- Hola!!La verdad es que esa duda tb la tenia yo, asi que me ha venido bien la contestacion. Solo tengo un par de dudas sobre esto:
La primera es: debo de poner en el .h todos los tipos, o puedo poner parte de ellos en el .c (para conseguir mayor ocultacion, que al fin y al cabo es de lo que van los TADs) ???
La segunda es: con que opciones se compilan los archivos y en que orden??
Uso el gcc bajo un PIV con WXP. Para compìlar normalmente uso gcc -c fichero.c , pero al compilar el .h me pone:
gcc: compilation of header file requested
Sobre el .c , solo me compila si comento las directivas de preprocesador #if_not_define y #end_if que deciais que habia que poner. De todos modos el .h no me compila (con o sin ellas).
A que se debe?? Me siento un poco... :alien:
Muchas gracias por adelantado
--- Fin de la cita ---
La primera:
No, solo los que necesites para usar desde "afuera" de tu TAD, Todos los tipos que sean de uso "interno" al tad, van al .c
Se compila como siempre el .c sin nada especial con gcc seria:
gcc -c -Wall -O2 lista.c -I. -L. (resto de los includes y librerias y bla bla)
Y listo :D
El .h no se compila, se usa luego para ver las definiciones de tu .c en otros archivos del proyecto a traves de los includes.
ahora el #ifndef #endif que decis que necesitas poner es para evitar "inclusion recursiva" y "doble inclusion" de los archivos .h en un proyecto donde varias veces se use el .h en cuestion, a veces las declaraciones se superponene en un mismo ambite y salen problemas de "definition duplicated" o cosas por el estilo indicando comoq eu las funciones y/o vatraibles y/o tipos de datos son declarados dos veces.
slds.
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa