Ich habe eine Quelle gesehen wo Array initialisieren in int arr[3] ={0,};
Was bedeutet das? Normalerweise verwende ich dieses Format int arr[3]={0};
kann ich wissen, was ist der UnterschiedArray in c initialisieren im Format `int a [3] = {0,};`
Antwort
Dies ist wahrscheinlich eine dup, aber ich werde einen Schuss sowieso.
Es gibt keinen Unterschied zwischen int arr[3] ={0,};
und int arr[3] ={0};
.
Ref: C11 6.7.9:
initializer:
assignment-expression
{ initializer-list }
{ initializer-list , }
Beide Formen der initializer Listen initializers berücksichtigt. Das Formular mit dem Komma am Ende wird von vielen bevorzugt, da es das Umordnen oder Hinzufügen von Elementen zur Liste während der Codepflege vereinfacht.
int arr[3] ={0,};
eine Anordnung von drei Elementen deklariert und initialisiert das erste Element auf 0. Wenn Sie eine partielle Initialisierung tun, wird der Rest des Arrays automatisch mit Nullen initialisiert.
Ref.-Nr. 6.7.9 C11:
Wenn weniger Initialisierungen in einer spange beigefügte Liste sind, als es sind Elemente oder Teile eines Aggregats, oder weniger Zeichen in einem Stringliteral verwendeten einen Array von bekannter Größe zu initialisieren als dort sind Elemente im Array, der Rest des Aggregats soll implizit gleich initialisiert werden wie Objekte mit statischem Speicher Dauer.
- 1. Initialisieren von 2D-Int-Array in Laufzeit
- 2. Wird {0, 0} Array in der Struktur initialisieren?
- 3. Unterschied zwischen diesen Ausdrücken: int * a = 0; int * a = 10;
- 4. C++ lesen jeweils 3 Elemente im Array
- 5. das Array Initialisieren in C++
- 6. C++ konvertieren int-Array in int16_t-Array
- 7. Initialisieren großen zweidimensionalen Array in C++
- 8. initialisieren char-Array in C
- 9. Bedeutung von int (0) in int * pi = neuer int (0) ;?
- 10. C - Array von Strukturen initialisieren
- 11. C++/Arduino: dynamische Int-Array
- 12. Java: Wie int Array in einem Switch-Fall initialisieren?
- 13. Wie zu übersetzen Datum im Int-Format in XML
- 14. C# berechnen Mittelwert der Werte im Array int
- 15. initialisieren structs in C++
- 16. 0 im leeren Array gefunden
- 17. find_by_sql mit Array-Format in Rails 3
- 18. C# int Array Passing zu C++
- 19. C#: ein DateTime-Array initialisieren
- 20. c - falsches Zählergebnis im Array
- 21. Initialisieren Array von bestimmten Adresse im Speicher - C-Programmierung
- 22. C# Zeitzähler im Format xx.xx.xx
- 23. Wofür steht "a" in der Schrift: 0/0 a;
- 24. initialisieren C-Stil-Array mit Nicht-Null-Wert ohne Schleifen
- 25. PHP transformieren Array 'a', 'b', 'c' zu 'a/b/c', 'a/b', 'a'
- 26. Konvertierung von CSV-String-Array in int Array gibt 'Eingabe-String war nicht im richtigen Format'
- 27. Wie zu initialisieren doppeldimensionales Array mit Null in C#
- 28. Warum führt $ a + = 3 schneller als $ a = $ a + 3 aus?
- 29. initialisieren ein const-Array in einem Klasseninitialisierer in C++
- 30. ein Array initialisieren mit dem letzten Element Schlüssel mit ‚0‘
Die Frage ist ein vollständiges Duplikat von [Array-Initialisierung C] (http://stackoverflow.com/questions/16414622/array-initialization-c). Das heißt, ich mag deine Antwort besser als die dort gegebenen. – dxiv
Der in der Antwort [SO 7043372] (http://stackoverflow.com/q/7043372) erwähnte dup ist eine C++ - Frage, während dies für C gilt. Es ist vorzuziehen, C-Fragen für andere C-Fragen zu duplizieren. –