So schön einfach wie in PHP ("assoziative Arrays") gehts leider nicht.
Was ich aber oft verwend, sind einfache Kommentare:

Code:
struct
{
int a;
char b;
unsigned int c;
signed char d;
} myStruct = {
/* a = */ 100,
/* b = */ 'X',
/* c = */ 30,
/* d = */ 100};
Ist zwar etwas mehr Aufwand, aber so weiss man, was wohin gehört. Und solang man die Reihenfolge nicht durcheinanderschmeisst, passt das auch.