Non-testable
This entire article is not testable CPSC 213, but it is really nice syntactic sugar to know about in C.
The designated initializer in C is syntactic sugar that permits the initialization of members of a struct without having to worry about position, rather it uses names. For example,
struct A{
int x;
int y;
}
//regular initialization:
struct A a = {1, 1};
//designated initializer
struct A a = {
.y = 1,
.x = 1
};
This also enables fields to be ignored, and partially initialized. Those fields are explicitly set to 0 for static and global, or will be left indeterminate for local non-static structs.