To keep up with the conventions we use everywhere, we should remove the last two members, whose initialization to zero is redundant. In my opinion, there's no point in trying list all members everywhere. You're only forcing yourself to update all places where the structure is declared every time you add a member, even if zero is a good default. (Sure, you may skip the update, but then why insisting in listing them all in the first place, if it won't be consistently done?)