C++ Dynamische Array und Struktur?
Hallo,
sicherlich weiß der ein oder andere von euch, wie man eine Dynamische Array überprüfen kann, ob sie bereits Werte enthält? Mein Ansatz war mit sizeof. Ich bin mir aber nicht sicher ob da korrekt ist.
Außerdem habe ich ein ein Array in einer Struktur erschaffen. Diese dann Dynamisch gemacht. Und dann der Array Werte hinzugefügt. Das Programm warnt mich jedoch vor ungültige Daten! Kann mir wer sagen wieso, welchen Fehler mache ich?... Denn Code füge ich an.
Danke für die Antworten.
1 Antwort
Mit sizeof kannst Du im besten Falle die aktuelle Größe bestimmen, aber nicht den Belegungsgrad oder ähnliches.
Die Frage ist ja eh, warum Du da in plain C rumkrüppelst, wenn Du es in C++ fertig als std::vector geliefert bekommst?
Aha, na dann.
Du könntest übrigens mit 0 initialisieren, wenn das kein legitimer Wert für Deine Anwendung ist und belegte Felder haben dann eben einen Wert != 0.
Du liest anz ein, und erzeugst auf dessen Basis dann auch Dein Array, also kannst Du das gleich weiterverwenden.
Die Division zur Bestimmung der Elementzahl kann nicht funktionieren, eigentlich müßte der Compiler sich je nach Warnungseinstellung darüber beschweren, daß der Typ unvollständig ist (das müßte AFAIK auch in C++ noch gelten).
Randbemerkung, wir haben es heir auch nicht mit einem dynamischen Array zu tun, sondern nur mit einem dynamisch allozierten.
Pflicht für die Schule🙃