Ist ein Float auf einem 32Bit Windows immer 32bit groß?
-
Oder ist das Computer abhängig?
-
Ich denke fast, dass das compilerabhängig ist.
MfG SideWinder
-
Ich arbeite mit VC6
Und das hier funktioniert zu meiner Verwunderung
Ist das dann auf anderen Rechnern auch so?double Nulltest=0.000000000000000000000000000000004; float Nullf=(float)Nulltest; str.Format("%.33f",Nullf); MessageBoxA(NULL, str, NULL, MB_OK); //ausgabe 0.000000000000000000000000000000004
Und hier der Assembler Teil
; 2435 : double Nulltest=0.000000000000000000000000000000004; mov DWORD PTR _Nulltest$[ebp], 2008686428 ; 77ba1f5cH mov DWORD PTR _Nulltest$[ebp+4], 959759593 ; 3934c4e9H ; 2436 : ; 2437 : float Nullf=(float)Nulltest; fld QWORD PTR _Nulltest$[ebp] fst DWORD PTR _Nullf$[ebp] ; 2438 : ; 2439 : str.Format("%.33f",Nullf); sub esp, 8 fstp QWORD PTR [esp] push OFFSET FLAT:$SG73672 mov ecx, DWORD PTR _this$[ebp] add ecx, 1154 ; 00000482H push ecx call ?Format@CString@@QAAXPBDZZ ; CString::Format add esp, 16 ; 00000010H
Mir ist geht es jetzt um die Frage ob sich mein Code dann auf anderen Rechnern genauso verhält??
-
im Standard sind nur Mindestbitbreiten angegeben, also muss das nicht überall gleich sein.
-
Ja aber ein DWORD ist doch immer 32 BIT groß oder nicht?.
Der Standart interessiert mich herzlich wenig wenn ich Anwendungen mit VC für 32Bit Windows manche.
Ich habe ja schon fast drauf gewartet das wieder einer mit den Verweis auf den Standart kommt.
Ich müsste das aber schon genau wissen wie sich das verhält.
-
Also was willst du dann genau wissen? Ob float auch dann 32bittig ist, wenn du dein .exe auf einem anderen Rechner ausführst?
-
*rofl* Überleg doch mal: Wenn dich nur dein Compiler interessiert, schaust du nach was der kann und gut. Dann wird das so kompiliert und du hast immer die Bitbreite mit der das erstellt wurde. Er ändert die mal einfach von Projekt zu Projekt^^
-
Float schrieb:
Ich habe ja schon fast drauf gewartet das wieder einer mit den Verweis auf den stan**** kommt.
*hehe* Ich hab auf den Standard und nicht den Standart verwiesen
Das nächste mal evtl. genauer sagen was du willst.
-
Ringding schrieb:
Also was willst du dann genau wissen? Ob float auch dann 32bittig ist, wenn du dein .exe auf einem anderen Rechner ausführst?
Ja im die Frage geht es mir im Prinzip und ob die Float auch genauso interpretiert wird wie auf meinem Rechner , also ob die obige Funktion auf jedem Rechner auch das selbe Ergebnis bringt.
-
Ja, das wird überall so sein.
-
Besten Dank für eure Hilfe
Gruß Jens