Problem mit mehrdimensionellen Arrays (sizeof)

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Morgen,


    ich habe ein Problem: Ich kann bei einem mehrdimensionellen Array kein sizeof anwenden.


    Beispiel:

    if (GetPVarInt(playerid, "SkinSelect") == sizeof(Skins[GetPVarInt(playerid, "playertype")]))


    Dies ergibt folgende Meldung:

    Code
    C:\xxx\gamemodes\dmserver.pwn(2362) : error 001: expected token: "]", but found "-identifier-"
    C:\xxx\gamemodes\dmserver.pwn(2362) : error 001: expected token: ";", but found "]"
    C:\xxx\gamemodes\dmserver.pwn(2362) : error 029: invalid expression, assumed zero
    C:\xxx\gamemodes\dmserver.pwn(2362) : fatal error 107: too many error messages on one line


    Der Fehler liegt bei dir if- Abfrage. Ich möchte wissen, wie groß die Kapazität des mehrdimensionellen Array nach Skins[] ist.

  • OK, andere Erklärung:


    Meine Arrays sind ungefähr aufgebaut:

    new Skins[20][40];


    Skins[0][0] = 210;
    Skins[0][1] = 211;


    Skins[1][0] = 0;
    Skins[1][1] = 150;
    Skins[1][3] = 155;


    Ich möchte das der Spieler zwischen den Skins durchswitchen kann per Mausklick (OnPlayerKeyStateChange, halt). Ich möchte aber zuerst abfragen ob der Spieler ein Angreifer ist (0) oder der Spieler ein Verteidiger ist (1).


    Je nachdem soll dann abgefragt werden wie viele Inhalte Skins[0] hat (hier: 2) und wie viele Inhalte Skins[1] hat (hier: 3). Versteht ihr was ich meine ?