E
Eric Jacoboni
Hi,
Say i've a C struct like that:
typedef struct {
char name[30];
double size;
int age;
char stuff;
} enreg_t;
This record is written in a file that i want to re-read with a Ruby
script (just a toy example... to understand).
I've not found a "clean" way to unpack such a record...
My C compiler gives me a total sizeof of 48, so i use a
fd.sysread(48).unpack(A32dIC) to re-read. But that seems rather
'tricky' (i suppose we don't have always such a
information). Furthermore, the first element is completed with
garbage if the name field have less than 30 "useful" chars ("Doe",
for example).
I'm sure i'm missing something but i've not managed to find the right
way to do that.
Any clue?
Say i've a C struct like that:
typedef struct {
char name[30];
double size;
int age;
char stuff;
} enreg_t;
This record is written in a file that i want to re-read with a Ruby
script (just a toy example... to understand).
I've not found a "clean" way to unpack such a record...
My C compiler gives me a total sizeof of 48, so i use a
fd.sysread(48).unpack(A32dIC) to re-read. But that seems rather
'tricky' (i suppose we don't have always such a
information). Furthermore, the first element is completed with
garbage if the name field have less than 30 "useful" chars ("Doe",
for example).
I'm sure i'm missing something but i've not managed to find the right
way to do that.
Any clue?