Anzahl Array



  • Hallo,

    wenn ich ein Array deklariere
    int Test[1024]

    jedoch nur bis. 1000 beschreibe, gibt es einen Trick um dies zu erkennen, ohne
    alle Werte auszulesen (ab zu klappern).
    Ich weiß nicht welche Werte richtig und falsch sind.
    Kann ich vielleicht beim deklarieren so etwas ähnliches wie
    int Test[100] = NULL;

    damit ich sehe, halt diese Variable wurde noch nie verändert.
    Einfach die Variable mit etwas deklarieren das keine normale Zahl ist.
    Ich hoffe ich konnte es gut erklären.

    Gruß
    worst_case



  • Du könntest z.B. in Test[0] die Anzahl der beschriebenen Stellen speichern.
    Ansonsten wird oft ein Wert genommen der bei dir nicht vorkommen kann, was z.b. das Maximum der Wertebereichs der Zahl ist. Da musst du dann aber dafür sorgen, dass das bei dir nicht vorkommen kann. Du kannst auch zu jedem Wert den du reinschreibst eins dazuzählen und das ganze Array mit 0 initialisieren.



  • NULL bringt ja nix, wenn 0 eine gültige Zahl ist. Du könntest irgendeinen ungültigen Wert nehmen, der garantiert nie in deinen Daten vorkommen kann. Bei Zahlenwerten könnte das z.B. -1 sein, wenn ansonsten keine negativen Zahlen vorkommen.

    Aber eigentlich ist das alles Quatsch, wenn du nicht wild hin und her springst, sondern von vorne der Reihe nach schreibst. Dann kannst du doch einfach einen Zähler mitlaufen lassen, der verrät dir dann das letzte, verwendete Element. Oder spricht etwas dagegen?


Anmelden zum Antworten