Ciao a tutti! 
Spero possiate essermi d'aiuto. Sto facendo un progetto dove devo costruire un database. Praticamente ho una funzione chiamata CreateDatabaseFile() che deve creare un file di database. Questo file va aperto in modalità binaria e fin qui nessun problema. Il problema sta nella scrittura dell'header che è una struttura definita così:
codice:
typedef struct {
FILE *fp; //!< File pointer del database aperto
char Name[DBF_NAME_LENGTH+1]; //!< Nome del database escluso estensione
int NumFields; //!< Numero dei campi del database
long NumRecs; //!< Numero totale di records nel database
int HeaderLen; //!< Lunghezza dell'Header
int RecordLen; //!< Lunghezza di un record del database
long CurrentRec; //!< Numero del record corrente
time_t LastUpdate; //!< Data e ora ultimo aggiornamento (Julian date)
} DBF_INFO_t;
Secondo le specifiche e' consigliaro creare un buffer dove serializzare tutti i campi necessari per poi scrivere tutto il buffer su file. Ecco questo punto mi riesce difficile, perché un buffer dovrebbe essere rappresentato da un array, ma l'array come fa a memorizzare tutti questi tipi di dato diversi?
Grazie.