2D array in Text ausgeben?
-
Hallo Forum

ich habe schon ein paar antworten von anderen Beiträgen gelesen. Leider waren diese unverständlich oder nicht passend zu mein Problem

Ich muss ein einfaches Schach Programm schreiben.
Bei mir bleibt es aber bei der Ausgabe hängen

Ich habe das für den Array Inhalt deklariert:
const int black = 8; const int white = 8; enum Chesspieces { empty = 0, wPawn = 1, bPawn = 1, wRook = 2, bRook = 2, wKnight = 3, bKnight = 3, wBishop = 4, bBishop = 4, wQueen = 5, bQueen = 5, wKing = 6, bKing = 6 }; Chesspieces piece[black][white] = { {wRook, wKnight, wBishop, wQueen, wKing, wBishop, wKnight, wRook}, {wPawn, wPawn, wPawn, wPawn, wPawn, wPawn, wPawn, wPawn}, {empty}, {empty}, {empty}, {empty}, {bPawn, bPawn, bPawn, bPawn, bPawn, bPawn, bPawn, bPawn}, {bRook, bKnight, bBishop, bQueen, bKing, bBishop, bKnight, bRook} };Ich habe die Ausgabe und alles schon fertig programmiert, aber die Ausgabe erfolgt leider durch Zahlen. Ich möchte das z.B. "bKnight" kommt, bei der Ausgabe

(Ich weiß dass, dadurch das 2, 3, 4, 5, und 6 zwei Schachteile darstellen, es später Probleme geben wird. Aber das ist nicht meine Frage, das werde ich schon lösen.:) )
Ich bitte um Hilfe
danke im voraus
-
wieso machst du das denn so kompliziert?
enum Chesspieces { empty, wPawn, wRook, wKnight, wBishop, wQueen, wKing, bPawn, bRook, bKnight, bBishop, bQueen, bKing }Das schoene an enum ist doch, dass du dich NICHT um die einzelnen Zahlen kuemmern musst, sondern symbolische Konstaten einfuehrst.
Hiermit laesst sich auch deine Frage loesen:
char* Chesspieces_string[] = { "empty", "wPawn", "wRook", "wKnight", "wBishop", "wQueen", "wKing", "bPawn", "bRook", "bKnight", "bBishop", "bQueen", "bKing" } cout << Chesspieces_string[wKnight];
-
Wie willst du die Weißen von den Schwarzen unterscheiden, wenn sie die gleichen Werte haben?
-
vielen Dank Hyde++!

ich weiß nicht wieso ich nicht darauf kam -.-@dirkb, ja ich weiß, das habe ich als anfang nur so gemacht. ich wollte es später ändern, mir war die ausgabe erstmal wichtiger.
