Date: Tue, 30 Jun 2009 17:49:30 +0100 From: Tom Evans <tevans.uk@googlemail.com> To: Alexander Best <alexbestms@math.uni-muenster.de> Cc: freebsd-hackers@FreeBSD.org Subject: Re: c question: *printf'ing arrays Message-ID: <1246380570.2437.219.camel@strangepork.london.mintel.ad> In-Reply-To: <permail-2009063016121880e26a0b000035b1-a_best01@message-id.uni-muenster.de> References: <permail-2009063016121880e26a0b000035b1-a_best01@message-id.uni-muenster.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 2009-06-30 at 18:12 +0200, Alexander Best wrote:
> hi there,
>
> i need to output the header of a file to stdout. the header looks like this:
>
> struct Header
> {
> u_int8_t rom_entry[4];
> u_int8_t nintendo_logo[156];
> u_char game_title[12];
> u_char game_code[4];
> u_char maker_code[2];
> u_int8_t fixed_val;
> u_int8_t unit_code;
> u_int8_t device_type;
> u_int8_t reserved_area1[7];
> u_int8_t software_version;
> u_int8_t complement_check;
> u_int8_t reserved_area2;
> u_int8_t ram_entry[4];
> u_int8_t boot_mode;
> u_int8_t slave_id;
> u_int8_t unused_area[26];
> u_int8_t joybus_entry[4];
> };
>
> if there a way to use printf or some other variant of *printf without using
> sizeof()-loops for all the arrays?
>
> cheers.
None of your arrays are dynamically sized, so surely
write(fd, &hdr, sizeof(Header));
would do the trick?
Cheers
Tom
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1246380570.2437.219.camel>
