Mi pare che valga anche in C. Occhio però che la aggregate initialization inizializza a 0 i campi della struttura, non i byte di memoria che essa occupa. Questo può essere un bene (il C non garantisce, ad esempio, che un float azzerato da memset risulti effettivamente uguale a zero, mentre così vai sul sicuro) ma anche un male, dato che alcune librerie che usano le strutture in modo particolare potrebbero esigere che vengano azzerati anche i byte di padding.

Rispondi quotando