abschreiben eines codes für eigene zwecke(nur um sich ideen zu holen), geht aber nicht, wieso???
-
hallo ich habe mal im forum nen bissel rum gestöbert und haBE UNTERANDEREM NEN THREAD GEFUNDEN WO JEMAND "snake" in einer consolenAnwendung gecoded hat und dort fand ich auch nen kompletten code... ich war natuerlich voll interessiert und wollte das gleiche prinzip fuer andere spielerein nutzen... aber es geht irgend wie nicht.... es laesst sich einwandfrei compilieren.... DOCH beim ausführen kommt die fehlermeldung:
**
"Project Project2.exe raised exception class EInvalidOP with message 'Invaild floating point operation'. Process stopped. Use Step or Run to continue." und dann wenn ich ok druecke ist:
**#include <iostream.h> #include <conio.h> #include <windows.h> int main() { char Key; long double delay; int f,pos_x=2, pos_y=2; gotoxy(pos_x,pos_y); cprintf("*"); while(Key != 27) // solange nnicht die Taste Escape gedrückt wird, gehts weiter { while( delay < 5000000) /* HIER */ { /* ein grüner -> */ delay++; } delay = 1; if(kbhit()) { Key = getch(); } switch(Key) { case 'w': pos_y--; break; case 'a': pos_x--; break; case 's': pos_y++; break; case 'd': pos_x++; break; } clrscr(); cprintf("*"); gotoxy(pos_x,pos_y); } }
was ist hier schief gelaufen das das prog net arbeitet???
-
falsches forum. das ist auch ziemlich grausamer code. ganz nebenbei gesagt, wäre es sicherlich sinnvoll, delay zu initialisieren - so ist das undefiniertes verhalten. ein guter compiler wird das auch mit einer warning kommentieren.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum DOS und Win32-Konsole verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
wieso grausamer codE???
wie wuerde es denn richtig gut aus sehen????
-
while( delay < 5000000) { delay++; } delay = 1;
hier passiert im schon mal gar nichts außer
delay = 1;
alles andere ist ohne seiteneffekte und kann folglich wegoptimiert werden. um eine definierte zeitverzögerung zu erhalten, muss man auf bestimmte funktionen des systems zurückgreifen. da windows.h schon eingebunden ist, wäre ein Sleep sicherlich angebracht. Key sollte besser auch initialisiert werden - hier liegt zwar kein undefinierets verhalten vor - aber das programm könnte sich durchaus sofort beenden.
-
wo muesste ich das slepp hin schreiben ????
-
kann mir mal noch jemand sagen wie ich den cosur ausblende und bitte net den link http://ic.sidewindershome.net/ schicken habsch schon geguckt ich finds net oder komm mit der beschreibung net klar ... hmmm
thanx
-
Wo du "slepp" hinschreibst ist egal, funktioniert sowieso nicht.
Was willst du ausblenden?
-
ohh passt schon alles habs hin bekommen.... cursor ausblenden = _setcursortype(_NOCURSOR) und sleep = _Sleep(unsigned) .... klappt alles trotzdem danke