There's also a way to do this without any user-defined functions that works in both C and C++:
struct tm tm_struct = { 0, }; struct tm tm_struct = { 0, }; struct tm tm_struct = { }; struct foo { char bar[3]; };
These declarations are equivalent: struct foo f1 = { 0, };
struct foo f2 = { { 0, } };