Warum können Strukturen nicht direkt zugewiesen werden?

Angenommen, ich habe eine vollständig definierte Struktur mit dem TagMyStructund nimm das anx, y, ..., z sind zulässige Werte für seine Felder. Warum ist

struct MyStruct q = {x,y,..,z};

erlaubt, aber

struct MyStruct q;
q = {x,y,...,z};

ist nicht erlaubt? Das finde ich sehr ärgerlich. Im zweiten Fall, wo ich vorher erklärt habeqIch muss jedem Feld nacheinander einen Wert zuweisen:

q.X = x; q.Y = y; ... q.Z = z;

woherX, Y, ..., Z sind die Felder vonMyStruct. Gibt es einen Grund dafür?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage