News for hackers. Stuff that matters.
Re:C Legacy Is Evil by JoeAltmaier on Tuesday November 04, 2014 @04:42PM (#8559216)
Does that work on char array members in the struct?
Re:C Legacy Is Evil by dezgeg on Tuesday November 04, 2014 @04:47PM (#8559253)
Yes, as far as I believe, this should always work in standard C89/C99. In the char array case, it works due to the brace elision rule in aggregates: assuming

    struct foo { char bar[3]; };
These declarations are equivalent:

    struct foo f1 = { 0, };
    struct foo f2 = { { 0, } };
Re:C Legacy Is Evil by readerrrr on Tuesday November 04, 2014 @04:45PM (#8559239)
In C, using: struct tm tm_struct = { 0 } ;, the rest of the struct including padding is initialized to zero bits.