Česky
Kamil Dudka

Tiny programs (C, C++, C#, ...)

File detail

Name:Downloadproj4_io.h [Download]
Location: tiny > IZP > proj4
Size:1.5 KB
Last modification:2009-12-21 17:54

Source code

/*
 * Soubor:  proj4_io.h
 * Datum:   15.12.2004
 * Autor:   Kamil Dudka, xdudka00@stud.fit.vutbr.cz
 * Projekt: IZP c. 4 - Ceske razeni
 * Popis:   Hlavickovy soubor k souboru proj4a.c
 *
 * Prosím, neodevzdávejte zdrojové kódy, které jsou zde k dispozici,
 * jako Vaše školní projekty. Děkuji :-)
 */
 
/*
 * Pro ladeni programu je vhodne nasledujici radek zakomentovat
 */
#define NDEBUG
 
#include <stdlib.h>
#include <assert.h>
 
/*
 * Maximalni pocet znaku ve jmene a prijmeni
 */
#define NAME_LENGTH 20
 
/*
 * Mnozina pripustnych hodnot pro prvni parametr funkce fileIO
 */
typedef enum {
	FIO_NULL,
	FIO_INIT,
	FIO_READLINE,
	FIO_WRITELINE,
	FIO_CLOSESRC,
	FIO_CLOSEDEST
} EFileIO;
 
/*
 * Struktura obsahujici data o jedinne osobe
 */
typedef struct {
	char surname [NAME_LENGTH+1];	// retezec ukonceny nulou
	char name [NAME_LENGTH+1];	// retezec ukonceny nulou
	int sex;			// 0 je-li muz, 1 je-li zena
	int birth;			// Rok narozeni
} TPerson, *PTPerson;
 
/*
 * Struktura obsahujici informace o datech
 */
typedef struct {
	unsigned int count;	// pocet osob
	PTPerson pData;		// ukazatel na data o prvni osobe
	unsigned int *mapTable;	// tabulka mapovani zaznamu
} TData, *PTData;
 
/*
 * Prototypy funkci definovanych v souboru proj4a.c (rozhrani I/O)
 * Popis jednotlivych funkci je uveden u jejich tela v souboru proj4a.c
 */
void printErrMsg (const char *);
void printHelpExit (void);
int fileIO (EFileIO, void *);
int readData (PTData);
int writeData (PTData);
void errorHandle (PTData, const char *);