Tiny programs (C, C++, C#, ...)
File detail
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 *);