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 nichts

    Da 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 gleich

    x-|-1-|-2-|-3-|
    A-|-o-|-x-|-x-|
    x-|----|----|---|
    B-|-o-|-x-|-x-|
    x-|----|----|---|
    C-|-o-|-x-|-x-|
    x-|----|----|---|

    Gruß



  • thx für die antwort..


Anmelden zum Antworten