|
|
|
|
|
by arcticbull
16 days ago
|
|
I looked into it some more and it's actually worse. For static or thread storage, in C11 and later, ={0} will guarantee padding is zeroed. For automatic storage, per C11 6.7.9, only subobjects are required to be zeroed. Padding is not. [1] In C23 initializing with ={} will give you zeroed padding, initializing with ={0} will not. [1] https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1548.pdf |
|