Fehler!?
-
Hallo erstma,
wieso zeigt meine Visual C++ .NET 2003 IDE bzw. der Compiler dieser bei folgendem Code:switch(dir) { case LEFT: if(m_vPosition.x>0) { m_vPosition.x -= m_StepX; } break; case RIGHT: if( m_vPosition.x<SCR_WIDTH-m_Width ) { m_vPosition.x += m_StepX; } break; case UP: if(m_vPosition.y>0) { m_vPosition.y -= m_StepY; } break; case DOWN: if( m_vPosition.y<SCR_HEIGHT-m_Height ) { m_vPosition.y += m_StepY; } break; }
folgende Fehler und Warnungen an? (Hinweis: Bei Visual C++ 6 hat das noch gefunzt)
warning C4018: '<': Konflikt zwischen 'signed' und 'unsigned'
warning C4018: '>=': Konflikt zwischen 'signed' und 'unsigned'
error C2143: Syntaxfehler: Es fehlt ')' vor ';'
warning C4390: ';': Leere kontrollierte Anweisung aufgetreten; ist dies beabsichtigt?
error C2059: Syntaxfehler: ')'
error C2143: Syntaxfehler: Es fehlt ';' vor '{'
warning C4552: '-': Operator hat keine Auswirkungen; Operator mit Nebeneffekt erwartet
error C2143: Syntaxfehler: Es fehlt ')' vor ';'
warning C4390: ';': Leere kontrollierte Anweisung aufgetreten; ist dies beabsichtigt?
error C2059: Syntaxfehler: ')'
error C2143: Syntaxfehler: Es fehlt ';' vor '{'
warning C4552: '-': Operator hat keine Auswirkungen; Operator mit Nebeneffekt erwartetVielen Dank für die Antworten
MfG Lokus
-
Wäre nett, wenn du die Zeilen markieren könntest an der die Fehler kommen. Und natürlich auch dazuschreiben, welcher Fehler.
-
variablendeklaration?
-
for(int i=0;i<m_AnimationVec.size();i++) //hier 1! { m_AnimationVec[i]->Release(); }
if(++m_CurrentImage >= m_AnimationVec.size()) // hier 2! { m_CurrentImage = 0; }
switch(dir) { case LEFT: if(m_vPosition.x>0) { m_vPosition.x -= m_StepX; } break; case RIGHT: if( m_vPosition.x<SCR_WIDTH-m_Width ) // hier 3, 4 und 5 { // hier 6 und 7 m_vPosition.x += m_StepX; } break; case UP: if(m_vPosition.y>0) { m_vPosition.y -= m_StepY; } break; case DOWN: if( m_vPosition.y<SCR_HEIGHT-m_Height ) // hier 8, 9 und 10 { // hier 11 und 12 m_vPosition.y += m_StepY; } break; }
1:warning C4018: '<': Konflikt zwischen 'signed' und 'unsigned'
2:warning C4018: '>=': Konflikt zwischen 'signed' und 'unsigned'
3:error C2143: Syntaxfehler: Es fehlt ')' vor ';'
4:warning C4390: ';': Leere kontrollierte Anweisung aufgetreten; ist dies beabsichtigt?
5:error C2059: Syntaxfehler: ')'
6:error C2143: Syntaxfehler: Es fehlt ';' vor '{'
7:warning C4552: '-': Operator hat keine Auswirkungen; Operator mit Nebeneffekt erwartet
8:error C2143: Syntaxfehler: Es fehlt ')' vor ';'
9:warning C4390: ';': Leere kontrollierte Anweisung aufgetreten; ist dies beabsichtigt?
10:error C2059: Syntaxfehler: ')'
11:error C2143: Syntaxfehler: Es fehlt ';' vor '{'
12:warning C4552: '-': Operator hat keine Auswirkungen; Operator mit Nebeneffekt erwartetVielen Dank für die Antworten
MfG Lokus
-
bei 3,4 & 5 würd ich den Teil
SCR_WIDTH-m_Width
in Klammern setzen. Sonst seh ich da eigentlich grad nix. Bei 8,9 & 10 das selbe.
-
bei 3,4 & 5 würd ich den Teil
SCR_WIDTH-m_Width
in Klammern setzen. Sonst seh ich da eigentlich grad nix. Bei 8,9 & 10 das selbe.das bekomme ich dann noch 4 Fehler mehr...
-
Dann zeig mal die Definition von SCR_WIDTH.
Vermutlich haste da n Semikolon?
-
lol ist das peinlich
:
#define SCR_WIDTH 1024; //<- was macht das Semikolon da? #define SCR_HEIGHT 768; //<- und hier auch! omg!
Danke dEUs für die Hilfe...
Beste Grüße Lokus
-
*g* kein Problem