#include <stdio.h>
struct X { int a, b, c; };
int main(void) {
struct X x = {.a=1, .b=2};
printf("x: %d %d %d\n", x.
a, x.
b, x.
c); x = (struct X){.a=1, .c=3};
printf("x: %d %d %d\n", x.
a, x.
b, x.
c); // initialize a const
// order can be changed when elements are named
const struct X cx = {.c=3, .b=2, .a=1};
printf("cx: %d %d %d\n", cx.
a, cx.
b, cx.
c); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgpzdHJ1Y3QgWCB7IGludCBhLCBiLCBjOyB9OwoKaW50IG1haW4odm9pZCkgewoJc3RydWN0IFggeCA9IHsuYT0xLCAuYj0yfTsKCXByaW50ZigieDogJWQgJWQgJWRcbiIsIHguYSwgeC5iLCB4LmMpOwoJeCA9IChzdHJ1Y3QgWCl7LmE9MSwgLmM9M307CglwcmludGYoIng6ICVkICVkICVkXG4iLCB4LmEsIHguYiwgeC5jKTsKCS8vIGluaXRpYWxpemUgYSBjb25zdAoJLy8gb3JkZXIgY2FuIGJlIGNoYW5nZWQgd2hlbiBlbGVtZW50cyBhcmUgbmFtZWQKCWNvbnN0IHN0cnVjdCBYIGN4ID0gey5jPTMsIC5iPTIsIC5hPTF9OwoJcHJpbnRmKCJjeDogJWQgJWQgJWRcbiIsIGN4LmEsIGN4LmIsIGN4LmMpOwoJcmV0dXJuIDA7Cn0K