Suchergebnisse

Suchergebnisse 1-4 von insgesamt 4.

  • Benutzer-Avatarbild

    Das was du da hast nennt sich Multidimensionales Array. Das heißt, du hast nicht nur eine, sagen wir einfach mal, Liste von Objekten, sonderm tief-verschachtelte Listen. Der [] Operator nennt sich Subscript Operator! Die eckigen Klammern bei Arrays haben zwei verschiedene Bedeutungen. 1. Größendefinition: Dies wird angegeben bei der Deklaration des Arrays z.B [5] gibt an, dass das Array 5 Elemente enthält und [2][5] gibt an dass das Array zwei mal 5 Elemente enthält Die gesamte Größe ergibt sich…

  • Benutzer-Avatarbild

    @ErfinderDesRades "int numbs[9];" < 9 Elemente, nicht 10 "int numbs2d[5][9];" < insgesamt 45 Elemente In C++ wird die Größe nicht mit Indizes angegeben sondern mit tatsächlicher Größe! @0ptix Und zu deiner Frage, "Was ist UB?" Das bedeutet Undefined Behaviour, was soviel heißt wie "unbekanntes Verhalten". Sprich, man weiß nicht was passieren wird!

  • Benutzer-Avatarbild

    Gehen wir es mal so an! Du hast das Array: C-Quellcode (12 Zeilen) Das sieht dann ungefähr so aus, ich habe jetzt einfach mal die indizes als Elemente genommen Du könntest auch sagen, pro eckige Klammer geht das Array um ein Level Tiefer. Also [] -> {} Ok nun schauen wir mal, wie könntem wir die 9 Erhalten? Diese müssten wir wie folgt auflösen:[2][0][1] [2] < weil wir C-Quellcode (3 Zeilen) haben möchten [0] < weil {8, 9} und [1] < weil "9" Das erste Element fängt immer bei 0 an Interessanter fu…

  • Benutzer-Avatarbild

    Nachtrag zu @ErfinderDesRades Ja, Arrays sind gut für fixed-size Mengen! Wenn du aber etwas dynamisches brauchst sind so wie ErfinderDesRades sagte, Listen notwendig! In C++ wäre der häufigste Container dafür std::vector Es ist wie ein Array aber dynamisch zuweisbar. Einziger Nachteil, wenn du mit Leistungskritischen Anwendungen wie z.B real-time threads arbeitest, sind dynamische Container nicht so geeignet, da sie dynamisch Speicher allozieren und diese Threads somit zu größeren Pausen zwingen…