Beiträge von DarkSyranus

    Öhm, also das ist eigentlich so leicht es geht.
    Für dich ist nur folgender Code interessant.

    Code
    for(short i = 65; i <= 90; i ++)
       {
          cout << i << " = " << char(i) << endl;
       }


    Ein einfaches cout.
    I ist vom Typ short, short ist eigentlich ein integer, allerdings frisst er nicht so viel Speicher, was das Programm um ein klein klein wenig verschnellert.

    Um nun einen Integerwert (i) in ein Ascii zeichen umzuwandeln, gibt es die ganz einfache Funktion char(). Noch Unklarheiten?

    Hm, wie meinst du das genau?

    Verstehe ich das richtig, dass du das beides in einer Anweisung machen willst, also anstatt 2 Zeilen 1?

    Falls ja ist mir keine Möglichkeit bekannt das zu machen.
    Du könntest dir jedoch eine Funktion selbst schreiben, die das macht, falls das hilft.

    Bitte erkläre es ein wenig genauer =)

    Ok, thx, leider wird das dann ja nicht als Pointer übergeben, oder?
    Ich brauch das ganze aber als Pointer, das ist das Problem ...

    Edit:
    Juhu !!! Ich habs hinbekommen, läuft nun über eine Referenz und ein Typedef.
    Hier die Lösung für alle Interessierten.

    Code
    typedef short tPoints[2][6];
    
    
    /* ... */
    public:
    	tPoints points; // Points of each player
    
    
    /* ... */
    void calculateMoveClass::init(tPoints &points)

    Trozdem Vielen, Vielen Dank für deine Hilfe.

    Ja, du hast recht, ich bin mit der Pointersache noch nicht so richtig vertraut :)
    Ersteinmal vielen Dank, dass du dir die Zeit nimmst und versuchst mir zu helfen.
    Leider läuft das ganze so auch nicht :(

    Zitat

    /opt/progs/c++/messalla/src/game.h:48: Fehler: keine passende Funktion für Aufruf von »calculateMoveClass::init(short int [2][6])«
    /opt/progs/c++/messalla/src/calculateMove.h:53: Anmerkung: Kandidaten sind: void calculateMoveClass::init(short int**)

    Hast du noch eine andere Idee?

    Ich fange langsam echt an an C++ zu verzweifeln ...
    Also, folgendes, erstmal der Code.

    Also, zuerst wird in der Klasse gameClass eine Instanz der Klasse calculateMoveClass angelegt.
    Nun versuche verzweifelt über den Konstruktor einen Referenz oder einen Pointer (ist mir eigentlich egal, welches von beiden) an die Funktion init() der Klasse calculateMoveClass zu übergeben.

    Google spuckte nach einigem Suchen folgendes aus.

    Code
    void test( int* t ) {
      t[0] = 1;
      t[1] = 2;
    }

    Ok, versuchen wir das mal.

    Zitat

    /opt/progs/c++/messalla/src/game.h:48: Fehler: keine passende Funktion für Aufruf von »calculateMoveClass::init(short int [2][6])«
    /opt/progs/c++/messalla/src/calculateMove.h:27: Anmerkung: Kandidaten sind: void calculateMoveClass::init(short int*)

    Das sagt mir, dass der Funktionsaufruf nicht zur Funktion passt.
    Wie schaffe ich es nun, diesen Pointer (oder die Referenz) in der andere Funktion zu haben?

    Post Scriptum:
    Bitte nicht über evtl. chaotischen Code meckern, ist nunmal mein Stil =)

    Ich geh zu dieser späten Stunde gleich noch die Wände hoch ...
    Also, dreht sich um folgendes.

    Ich lese von einem String immer ein Zeichen in einen const char *.
    Nun will ich vergleichen, ob dieses Zeichen ein Leerzeichen ist.

    -> Geht nicht.
    Ok, dacht ich mir, so kannste den Vergleich knicken, muss also irgendwie anders gehen.
    Kommen wir nun zu Google:
    Dort kann man viele nützliche Sachen finden, leider gehen die bei mir alle nicht ...

    Zitat

    /opt/progs/c++/messalla/src/game.h:75: Fehler: ISO-C++ verbietet Vergleich zwischen Zeiger und Ganzzahl

    Zitat

    /opt/progs/c++/messalla/src/game.h:75: Fehler: Typumwandlung von »const char*« nach »int« verliert Genauigkeit

    Kurzum: Hilfe, kann mir jemand sagen, wie ich das nun schaffe?

    Ungetestet!