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
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
bool ValidateCoords(char* coords, bool P2Active) { char c; switch(coords[0]) { case 'a': case 'A': { coords[0] = 0; break; } case 'b': case 'B': { coords[0] = 1; break; } case 'c': case 'C': { coords[0] = 2; break; } case 'd': case 'D': { coords[0] = 3; break; } case 'e': case 'E': { coords[0] = 4; break; } case 'f': case 'F': { coords[0] = 5; break; } case 'g': case 'G': { coords[0] = 6; break; } case 'h': case 'H': { coords[0] = 7; break; } default: return false; } if(P2Active) c = '2'; else c = '1'; // hier sollte stehen board[0][1] != '1' if(board[coords[0]][(coords[1]-1)-'0'] != c) return false; else // ich hab per debugger geprüft dass er true zurückgibt return true; } void move() { char start[2], end[2]; cout << "From: "; cin >> start; // hier gibt man erstmal die startkoordinaten von seinem stein an (zb. a1) // dann soll getestet werden ob überhaupt ein stein auf diesem feld liegt // nach der funktion steht dann hier true != true, was ja false is aber er springt trotzdem in den code in der while schleife O_o while(ValidateCoords(start, turns % 2) != true); { cout << "Invalid Coordinates! Choose one of your Figures!" << endl; cout << "From: "; cin >> start; } cout << "To: "; cin >> end; while(ValidateCoords(end, turns % 2) != true); { cout << "Invalid Coordinates! You can't jump to that field!" << endl; cout << "To: "; cin >> end; } } |
Zitat von »"Sk!p"«
ich weiß nich ob ich einfach nur zu blöd bin
C-/C++-Quelltext |
|
1 |
while(ValidateCoords(end, turns % 2) != true); |
C-/C++-Quelltext |
|
1 2 3 4 5 6 |
// hier sollte stehen board[0][1] != '1' if(board[coords[0]][(coords[1]-1)-'0'] != c) return false; else // ich hab per debugger geprüft dass er true zurückgibt return true; |
C-/C++-Quelltext |
|
1 2 3 4 |
if ( true ) return false; else return true; |
C-/C++-Quelltext |
|
1 |
return ( board[coords[0]][(coords[1]-1)-'0'] == c ); |
Zitat von »"David_pb"«
Schau dir die Zeile nochmal gaaaanz genau an, speziell das Semikolon gaaanz hinten!
Zitat von »"David_pb"«
Sowas entspräche diesem hier:
C-/C++-Quelltext
1 2 3 4 if ( true ) return false; else return true;
Zitat von »"Sk!p"«
ich muss mich allerdings nochmal ausdrücklich dafür entschuldigen dass ich bei meiner mami unten rausgefallen bin ohne der letzte 1337-3d-gamez-programmer zu sein. ich hoffe es gibt noch hoffnung für mich ansonsten stürze ich mich hier gleich ausm 3. stock :/
Administrator
Zitat von »"Sk!p"«
ich hätte mir das programm 4 milliarden mal mit dem debugger angucken können, wenn man nicht damit rechnet dass da ein falsches semikolon steht findet man (zumindest ich) nie
Zitat von »"Sk!p"«
ich weiß jetzt grad nicht genau was du meinst...schleifenrumpf is doch der anweisungsblock oder? denn da geht er ja jedesmal rein, egal wie die bedinung ausgewertet wurde.
Werbeanzeige