> to copy over the mSEED_data.subframe to the mSEED_record.frames[x] . I use memcpy
Except your code is copying the other way...
Besides, the final sizeof should have been sizeof(compressed_frame) to maximise the benefit of using the typedef.
> int subframe[MAXWORDSPERFRAME];
Saying compressed_frame subframe; would have been more in keeping with your efforts elsewhere.
Though if you made it a struct, like this
typedef struct {
int frame[MAXWORDSPERFRAME];
} compressed_frame; Then you would be able to do p_msDAT->subframe = p_msDAT->rec_ptr->frames[p_msDAT->frame_count];
as a straigh-forward structure assignment.
The downside is that everywhere else now has to have " .frame[pos] " member access.
> Would a multidimensional array better serve my purposes or is it simply a matter of style?
Despite the typedef, a 2D array is exactly what you have at the moment. It is functionally no different to saying int frames[MAXSEEDFRAMES][MAXWORDSPERFRAME];
Thanks for using the code tags, so few people seem to manage it on their first post that it's a rare treat worthy of comment.