Array: unerwartete Zahl in $Array[0]

  • huhu ^^

    gleich mal ne frage zu array...

    also 1dimensional, am besten kurz den code durchlesen und dann das ergebnis mit dem was im $string drin steht vergleichen...

    Hier der Code:

    Spoiler anzeigen
    [autoit]


    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $string = "3|0|a|b"
    local $arSplit[5]
    for $i = 0 to 4 step 1
    $arSplit[$i] = 777
    Next

    [/autoit] [autoit][/autoit] [autoit]

    for $i = 0 to 4 step 1
    msgbox(1,""&$i&"","" & $arSplit[$i]&"")
    Next

    [/autoit] [autoit][/autoit] [autoit]

    $arSplit = StringSplit($string, '|')
    for $i = 0 to 4 step 1
    msgbox(1,""&$i&"","" & $arSplit[$i]&"")
    Next

    [/autoit] [autoit][/autoit] [autoit]

    _ArrayDisplay($arSplit, "Array")

    [/autoit]

    also...bei mir ist $arSplit[0] = 4

    warum ist denn $arSplit[0] = 4

    ? :S

    Einmal editiert, zuletzt von revetr (25. Dezember 2009 um 19:54)

  • Hilfe lesen. StringSplit gibt im Index 0 die Anzahl der Elemente zurück.

    Und das hier:

    [autoit]

    msgbox(1,""&$i&"","" & $arSplit[$i]&"")

    [/autoit]


    ist unnötig das kannst du einfach so schreiben:

    [autoit]

    msgbox(1, $i, $arSplit[$i])

    [/autoit]

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

  • Einfach generell zur Abfrage von der Arraygröße (for schleife etc.) Ubound-1 benutzen da kann man nix falsch machen. Man muss dann nur darauf achten ob man bei $i = 0 oder $i = 1 beginnt.

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D