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ì:
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?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;
Grazie.