Seltsames Konstrukt, was ist falsch?
-
hi,
ich versuche grade ein Open Source Projekt ans laufen zu kriegen. Beim Ausführen des entsprechenden makefiles unter cygwin gab es einen Fehler und zwar ist _asm undeclared (+ein paar Folgefehler) ich wollte mir also den Quelltext ansehen um denn Fehler zu beheben und finde eine Struktur, die ich noch nie gesehen habe. Was ist das? und, noch viel wichtiger, was ist der Fehler?int Ftoi(double fval){ int temp; short oldcw; short tempcw; _asm { fnstcw oldcw /*save current control reg*/ wait mov ax,oldcw or ah,0Ch /*set truncation mode */ mov tempcw,ax fldcw tempcw fld fval /*do the conversion... */ fistp temp fldcw oldcw /*restore register */ mov eax,temp /* = "return temp;" */ } return temp; }Ich bedanke mich schonmal für Hilfe und verweise dann mit http://www.nuim.ie/academic/music/musictec/SndObj/main.html auf die Seite des Projekts.
kampino
-
Das is Vc++ Inline Assembler, der gcc benutzt ne andere Syntax, also musst du konvertieren
. kann ich dir jetz so nich sagen wies beim gcc aussehen muss, kenn mich nich so toll damitaus 
-
ich bedaure, dass ich kein assembler kann, aber im assembler-thread können dir best. welche helfen!
-
mach normales C++ draus:
int Ftoi(double fval){ return fval; }
wer immer das geschrieben hat, hat sich nicht vorher über die regeln bei der knvertierung von floats in ints informiert.
-
lol