Sujet : c initialization algorithm
De : thiago.adams (at) *nospam* gmail.com (Thiago Adams)
Groupes : comp.lang.cDate : 13. Oct 2024, 22:35:03
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vehee7$r8ri$1@dont-email.me>
User-Agent : Mozilla Thunderbird
The algorithm for C initialization as described in the standard and implemented in gcc allow this.
struct X{
int a,b,c;
};
int main()
{
struct X x = {.a=1,2,3,.a=1, 2, 3};
}
https://godbolt.org/z/7naedbEM6Basically, when a designed initializer is found the "cursor" goes to that member and the following members are initialized in order.
struct X{
int a,b,c;
};
int main()
{
struct X x = {.a=1,2,3,.a=1, 2, 3, .a=1, 4, 5};
}