Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Holy

Frischling

  • Private Nachricht senden

11

29.08.2011, 23:00

So hab jetzt alles mit char gemacht. Funzt aber nicht. Compiler: Keine Konvertierung von int in char *

C-/C++-Quelltext

1
2
3
4
5
6
7
8
            // Eingabe abfragen
            char select[2];
            cin.get (select, 1);

            if (select == 'a' && field01 == 'a')
            {
                field01 = marker;
            }

Was ist denn "select" genau? Jedenfalls keine einfache char-Variable. Du versuchst jedoch "select" mit 'a' zu vergleichen, was mit einer einfach char-variablen zwar funktionieren sollte, aber nicht mit einem....ich hoffe du kommst selber drauf ;)

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

12

30.08.2011, 01:41

Ändere diese eine Zeile:

C-/C++-Quelltext

1
int PlayerTurn (1);

in

C-/C++-Quelltext

1
char PlayerTurn ('O'); // ja das ist ein großes o


Dann speichert PlayerTurn den aktuellen Spieler und du brauchst Marker nicht mehr.
Dann kannst du auch PlayerTurn als Zeichen ausgeben.
Dann musst du das natürlich etwas umschreiben:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
if (PlayerTurn == 1)
{
marker = 'X';
}
else
{
marker = 'O';
}

Das ist aber nur ein Vorschlag. Wenn du nicht weißt was ich meine solltest du nicht Raten sondern es machen wie du wolltest.

C-/C++-Quelltext

1
cin >> Select; // war übrigens richtig.

Allerdings sollte Select auch ein einfacher Char sein(kein Array) wenn du nicht durchnummerieren willst. Allerdings find ichs persönlich mit Zahlen besser.(dann wieder int verwenden)
Hier eine kleine Erklärung zu den Chars: Link

Lass dich nicht von Ridens zu einem Array drängen wenn du noch nicht so weit bist. Er hat zwar recht aber für einen Anfänger ist es erstmal so besser wie ihm selbst die Lösung einfällt. Wenn es läuft, kannst du es immernoch mit einem Array probieren.

ps: Ist es Absicht, dass Gameover mit true initialisiert wird?^^
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »NachoMan« (30.08.2011, 01:53)


13

30.08.2011, 08:19

OT



Irgendwie bedenklich, wie die Werbung "mitdenkt"... :huh:

/OT
fka tm

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

14

30.08.2011, 08:56

Diese Werbung hab ich selber gebastelt, und sie wird in gewissen Unterforen häufiger angezeigt als in anderen ;)

ridens

Frischling

Beiträge: 47

Beruf: Freiberuflicher Entwickler

  • Private Nachricht senden

15

30.08.2011, 10:34

Lass dich nicht von Ridens zu einem Array drängen wenn du noch nicht so weit bist. Er hat zwar recht aber für einen Anfänger ist es erstmal so besser wie ihm selbst die Lösung einfällt. Wenn es läuft, kannst du es immernoch mit einem Array probieren.


Jo ich muss mich entschuldigen ^^ Ich hatte drüber nachgedacht ob es vielleicht besser wäre, das nicht zu erwähnen. Jetzt sehe ich: ja, es wäre besser gewesen :D

Für das bestehende Problem (und auch nur das) wäre im Moment die einfachste Lösung, eben select zu einem einfach char zu machen statt einem Array.

Werbeanzeige