Hallo,
ich habe ein C-Anfängerproblem:
Ich möchte Strukturdaten in eine Datei schreiben und wirder darauf zugreifen und diese auf dem Bildschirm darstellen. Was ist im folgenden Programm falsch, dass die Daten nicht richtig in die Datei geschrieben werden? Wie kann ich auf diese zur Darstellung zugreifen?
Danke und Grüße
Bahanfar
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
typedef struct header_struct
{
int dataID;
int info;
struct datatype
{
int first:1;
int type:4;
int cript:1;
}datatype1;
}HEADER;
FILE *dlt_file = NULL;
char *filename;
void writeInFile(FILE *file,HEADER data)
{
fwrite(&data,sizeof(HEADER),1 , file);
}
void readOutFile(FILE *file)
{
HEADER test;
fread(&test, sizeof(HEADER), 1, file);
//printf();
}
int main(void)
{
HEADER header;
filename = "data.dat";
if((dlt_file = fopen(filename, "r+b")) == NULL) {
return 0;
}
header.dataID = 12;
header.info = 110;
header.datatype1.cript = 0;
header.datatype1.first = 1;
header.datatype1.type = 2;
writeInFile(dlt_file,header);
readOutFile(dlt_file);
fclose(dlt_file);
return 1;
}
ich habe ein C-Anfängerproblem:
Ich möchte Strukturdaten in eine Datei schreiben und wirder darauf zugreifen und diese auf dem Bildschirm darstellen. Was ist im folgenden Programm falsch, dass die Daten nicht richtig in die Datei geschrieben werden? Wie kann ich auf diese zur Darstellung zugreifen?
Danke und Grüße
Bahanfar
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
typedef struct header_struct
{
int dataID;
int info;
struct datatype
{
int first:1;
int type:4;
int cript:1;
}datatype1;
}HEADER;
FILE *dlt_file = NULL;
char *filename;
void writeInFile(FILE *file,HEADER data)
{
fwrite(&data,sizeof(HEADER),1 , file);
}
void readOutFile(FILE *file)
{
HEADER test;
fread(&test, sizeof(HEADER), 1, file);
//printf();
}
int main(void)
{
HEADER header;
filename = "data.dat";
if((dlt_file = fopen(filename, "r+b")) == NULL) {
return 0;
}
header.dataID = 12;
header.info = 110;
header.datatype1.cript = 0;
header.datatype1.first = 1;
header.datatype1.type = 2;
writeInFile(dlt_file,header);
readOutFile(dlt_file);
fclose(dlt_file);
return 1;
}