Kleines Programm mit Karte doch schon wieder Probleme

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Kleines Programm mit Karte doch schon wieder Probleme

    Quellcode

    1. #include <iostream>
    2. using namespace std;
    3. struct S_FeldInfo
    4. {
    5. bool Besetzt;
    6. char Name[30];
    7. };
    8. const int Breite = 5;
    9. const int Hoehe = 5;
    10. S_FeldInfo Spielfeld[Breite][Hoehe];
    11. void LoescheSpielfeld ();
    12. void ZeigeSpielfeld ();
    13. void ZeigeFelddaten ();
    14. void BesetzeFeld ();
    15. int main ()
    16. {
    17. int Auswahl = 0;
    18.  LoescheSpielfeld ();
    19.  
    20. do
    21. {
    22. cout << endl;
    23. cout << "1 - Spielfeld anzeigen" << endl;
    24. cout << "2 - Feld besetzen" << endl;
    25. cout << "3 - Felddaten anzeigen" << endl;
    26. cout << "4 - Spielfeld loeschen" << endl;
    27. cout << "5 - Programm beenden" << endl;
    28. cout << "Auswahl: ";
    29. cin >> Auswahl;
    30. switch (Auswahl)
    31.   {
    32. case (1):
    33. {
    34. ZeigeSpielfeld ();
    35. } break;
    36. case (2):
    37. {
    38. BesetzeFeld ();
    39. } break;
    40. case (3):
    41. {
    42. ZeigeFelddaten ();
    43. } break;
    44. case (4):
    45. {
    46. LoescheSpielfeld ();
    47. cout << "Spielfeld wurde geloescht!" << endl;
    48. } break;
    49. case (5):
    50. {
    51. cout << "Programm beendet." << endl;
    52. } break;
    53. default:
    54. {
    55. cout << "Ungueltiger Menuepunkt!" << endl;
    56. }
    57. }
    58. } while (Auswahl != 5);
    59. return 0;
    60. }
    61. void LoescheSpielfeld ()
    62. {
    63. for (int y=0; y<Hoehe; y++)
    64. {
    65. for (int x=0; x<Breite; x++)
    66. {
    67. Spielfeld[x][y].Besetzt = false;
    68. }
    69. }
    70. void ZeigeSpielfeld ()
    71. {
    72. cout << endl;
    73. for (int y=0; y<Hoehe; y++)
    74. {
    75. for (int x=0; x<Breite; x++)
    76. {
    77.    
    78. if (Spielfeld[x][y].Besetzt == true)
    79. cout << "X";
    80. else
    81. cout << ".";
    82. }
    83. cout << endl;
    84. }
    85. void BesetzeFeld ()
    86. {
    87. int x = 0;
    88. int y = 0;
    89. do
    90. {
    91. cout << "x-Position (1-" << Breite << "): ";
    92. cin >> x;
    93. } while (x<1 || x>Breite);
    94. do
    95. {
    96. cout << "y-Position (1-" << Hoehe << "): ";
    97. cin >> y;
    98. } while (y<1 || y>Breite);
    99.  
    100. cout << "Name: ";
    101. cin.ignore ();
    102. cin.get (Spielfeld[x-1][y-1].Name, 29);
    103. Spielfeld[x-1][y-1].Besetzt = true;
    104. void ZeigeFelddaten ()
    105. {
    106. int x = 0;
    107. int y = 0;
    108.  
    109. do
    110. {
    111. cout << "x-Position (1-" << Breite << "): ";
    112. cin >> x;
    113. } while (x<1 || x>Breite);
    114. do
    115. {
    116. cout << "y-Position (1-" << Hoehe << "): ";
    117. cin >> y;
    118. } while (y<1 || y>Breite);
    119.  
    120. if (Spielfeld[x-1][y-1].Besetzt == false)
    121. {
    122. cout << "Dieses Feld ist noch nicht besetzt." << endl;
    123. }
    124. else
    125. {
    126. cout << "Feld ist besetzt von: ";
    127. cout << Spielfeld[x-1][y-1].Name << endl;
    128. }
    129. }
    Alles anzeigen

    Was das Programm machen soll, erkennt man ja schnell.Der Code ist an Sich doch eigentlich auch richtig, aber trotzdem haut mir MCV C++ 2010 Express einen Fehler hinaus.Er zeigt nicht mal an was es ist, ob es ein Syntax Fehler ist oder ob man irgendetwas nicht laden konnte oder sonst was.Nein da steht nur Fehler. Der ist so gravierend das er den Build nicht ausführt.Ich muss euch mal wieder fragen.Danke!
  • Der Quelltext sollte nicht das Problem sein.
    Ich denke eher du und dein Microsoft-Compiler oder die VS-IDE sind inkompatibel :D

    Wann genau wird dir der Fehler angezeigt und mit welchen Worten. Wenn du da herum eierst, können wir dir auch nicht richtig helfen. Da kommt es im Zweifel auf vorhandene oder nicht vorhandene Leerzeichen an.

    Du hast in deiner IDE ja ein Consolenprojekt ausgewählt und eingestellt, da dieser Quelltext ja für die Console ist?

    Dann ist es ja gut - hab zu lange getextet.

    MfG bcc-fan