Probleme bei meinem Schachbrett Projekt
-
Hey Leute,
Hab frisch angefangen mit dem c coden und vorerst einige Probleme doch ich hoffe ihr könnt mir bei der Lösung behilflich sein:Hier zuallerst die schachomat.c Datei:
#include <stdio.h> #include <conio.h> #include <stdlib.h> #include "schachbrett.h" clear_screen(){ int i; for (i=1;i<40;i++){ printf("\n"); } } main(){ char wert; printf("\t\tSCHACHOMAT\n\n\n"); printf("1.Spieler v SPieler\n"); printf("2.Spieler v Computer\n"); printf("3 Exit\n\n"); printf("Was wollen sie tun? >> "); wert = getchar(); switch(wert){ case'1': clear_screen(); printf("\t\tSpieler v Spieler"); //Hier das Schachbrett einfügen+***++++*** schachbrett(); break; case'2': clear_screen(); printf("Spieler v Computer"); break; case'3': clear_screen(); printf("EXIT..."); break; } }
und hier die schachbrett.h datei:
#include <stdio.h> #include <conio.h> #include <stdlib.h> schachbrett() { char brett[8][8]; int i,j,wert; for(i=0;i<8;i++) { for(j=0;j<8;j++) { brett[i][j]=' '; } } for(i=0;i<8;i++) { brett[1][i]='b'; brett[6][i]='B'; } brett[0][0]=brett[0][7]='t'; //=> Turm brett[0][1]=brett[0][6]='s'; //=> Springer brett[0][2]=brett[0][5]='l'; //=> Läufer brett[0][3]='d'; //=> Dame brett[0][4]='k'; //=>könig brett[7][0]=brett[7][7]='T'; brett[7][1]=brett[7][6]='S'; brett[7][2]=brett[7][5]='L'; brett[7][3]='D'; brett[7][4]='K'; printf(" A B C D E F G H\n"); for(i=7;i>=0;i=i-1) { printf(" +-+-+-+-+-+-+-+-+\n%d|",i+1); for(j=0;j<=7;j=j+1) { printf("%c|",brett[i][j]); } printf("%d\n",i+1); } printf(" +-+-+-+-+-+-+-+-+\n A B C D E F G H\n"); getch(); }
Meine Frage:
Mein Compiler zeigt immer einen Fehler(letzte zeile) in der schachbrett.h Datei an. Wahrscheindlich liegts an der Funktion.. aber warum
???
Freu mich schin auf eure Antworten
lg piscosterΔ
-
Hallo
leider ist meine Glaskugel in Reperatur
Welcher Fehler wird denn angezeigt
Mfg
Klaus
-
gcc hat bei mir schonmal kein problem damit überprüf mal
ob dein compiler richtig installiert/konfiguriert wurde.[edit] achja auch wenn du noch am Anfang bist, schreib
deinen code lieber etwas sauberer sonst wirds später
umso komplizierter
-
1. <conio.h> brauchst du nicht!
2. In deiner header datei Z49, ersetz mal das getch() durch getchar()Ich weiß jetzt nicht wie du die software baust,...
vlt. pack mal deine headerdatei in deine c datei und versuch dann nochmal zu kompilieren,...
Wenns dann baut, hast du vlt einen fehler in deinem makefile o.ä.Mit den 2 Änderungen oben bauts bei mir zumindest mit dem gcc v 4.0.2
(war allerding zu faul nen .c & .h file zu erstellen...)Gruß
qs
-
also ich verwende dev c++ 4.9.9.2...
@cppHoesel was meinst du denn mit schöner coden???
lg und danke für die antworten
piscoster
-
Er meint damit wohl,
dass du lernen musst deine Programme in teillösungen aufzuteilen und deine software von anfang an zu planen.Du schreibst z.B. eine Funktion schachbrett, in der zeichnest du dein schachbrett und deine Figuren.
Du wirst irgend wann mal an einem punkt sein, dass du die figuren handhaben musst.
In deiner form wird das nichtsDa kommt nähmlich sicherlich noch eine speicherverwaltung, ein handler für den spielstand (wer ist dran, hat jemand gewonnen)...
und wenn du dir wirklich anntun willst "Spieler gegen PC" einzurichten noch eine KI und noch vieles mehr....Tipp:
versuch dich erstmal an etwas übersichtlicheren spielchen als Schach
z.B. an, wie hieß das noch gleichx-|-1-|-2-|-3-|
A-|-o-|-x-|-x-|
x-|----|----|---|
B-|-o-|-x-|-x-|
x-|----|----|---|
C-|-o-|-x-|-x-|
x-|----|----|---|Gruß
-
thx für die antwort..