Archivos y estructuras

Orpheo
11 de Diciembre del 2009
[quote]Realizar un programa que contenga una estructura llamada coche y que tenga los siguientes miembros: modelo, precio e índice de venta (el alumno podrá si desea crear subestructuras a esa estructura, por ejemplo: marca del coche, descuentos…). Las variables a la estructura deben ser de tipo puntero. El programa se debe subdividir en 3 ficheros.
• El primer fichero debe contener la librería con la estructura y la declaración de todas las funciones que se van a utilizar (prototipo de las funciones).
• El segundo fichero debe contener el desarrollo de todas las funciones
• El tercer fichero debe contener el programa principal con el menú de selección
Desarrollar una función para cada caso:
1. Una función que inicialice un dato de la estructura
2. Un función que inicialice el array de la estructura
3. Un función que lea un dato de la estructura
4. Un función que lea el array de la estructura
5. Un función que visualice un dato de la estructura
6. Un función que visualice el array de la estructura
7. Un función que escriba en un fichero un dato de la estructura
8. Un función que escriba en un fichero el array de la estructura
9. Un función que recupere del fichero un dato de la estructura
10. Un función que recupere del fichero el array de la estructura
[/quote]

Lo que vienen siendo las funciones se hacerlas, pero lo que no se hacer es qué y cómo poner las cosas en cada fichero, siempre lo he hecho todo en el mismo, agradeceria algun ejemplo del estilo o lo q sea, básicamente no se llamar a una funcion de otro archivo desde uno diferente, gracias.

nota: es lenguaje C

carmarri
11 de Diciembre del 2009
Debes crear un proyecto, pero la forma de hacerlo puede variar dependiendo si estás usando un IDE (entorno de programación gráfico) o no.

Luego tienes que poner las cabeceras de todas las funciones que uses en el .h correspondiente, es decir, si tienes un fichero que contiene las funciones para manejar arrays y que se llama "arrays.c"/"arrays.cpp" entonces las cabeceras de las funciones deberán estar almacenadas en el fichero "arrays.h"

Después debes incluir este fichero *.h desde el *.c dónde llames a esas funciones (se incluyes el fichero de cabeceras, no el de código):
#include "arrays.h"

Después, dentro de los ficheros *.h debes usar la estructura siguiente

#ifndef ARRAYS_H
#define ARRAYS_H

//Aquí van las cabeceras y declaración de variables externas...

#endif //ARRAYS_H

Esta estructura se usa para que el compilador no compile el código de ese fichero cada vez que se llame, es decir, lo compilaría sólo la primera vez. Si no estuviese daría errores de redeclaración.


Un saludo
http://www.xatcom.net diseño web y comunicación