Array-Initialisierung in C

Ich habe Zweifel an folgendem Code:

int main()
{
    int array1 = {1,2,3,4,5}; //error in c++ , warning in c
    int array2[] = {1,2,3,4,5};
    int array3[5] = {1,2,3,4,5};
}

Dieser Code gibt in Zeile 3 in @ einen Fehler auc++ aber nicht inc?

Ich kennearray1 ist eigentlich einint undarray2 undarray3 sind Arrays, warum also kein c Compiler zeigt einen Fehler, aber nur eine Warnung: "Überschüssige Elemente in der skalaren Initialisierung"

Gibt es eine Verwendung einer solchen Definition und warum ist sie in @ gültic?

Antworten auf die Frage(7)

Ihre Antwort auf die Frage