Thanks for the explanation Salem. My assumption was what threw me off.

Quote Originally Posted by Barney McGrew View Post
Your code's going to be useless on platforms that don't support the 'packed' extension, use a different endianness to the FLAC spec, or don't provide the optional uint(16,32,64)_t types. If you provide more information about the desired portability of your code, what you're trying to do, and how you plan on going about it, you'll receive better advice.
Simply put, all I want to do is read everything from the file into various structs, but it looks like best practice for this type of thing is to make special struct loading functions since these field sizes aren't too friendly in terms of memory packing/alignment. I'm not a software engineer by trade, but how is something like this typically done in the industry? I imagine that its such a simple/common thing that there must be a pretty easy or elegant solution.

Thanks for hanging with me guys.