In Win32 API programming it\'s typical to use C structs with multiple fields. Usually only a couple of them have meaningful values and all others have to be zer
struct
The value initialization because it can be done at compile time. Also it correctly 0 initializes all POD types.
The memset() is done at runtime. Also using memset() is suspect if the struct is not POD. Does not correctly initialize (to zero) non int types.