int zu TCHAR oder LPCSTR
-
Hey!
Es gibt bestimmt einige Möglichkeiten. Jedoch klappt es bei mir nicht.
Habs mal so versucht:TCHAR szFps[128]; sprintf_s(szFps, "FPS: %.2f", 99); SetRect(&rect, 10, 10, 0, 0); d3dFont->DrawText(NULL, szFps, -1, &rect, DT_NOCLIP, D3DCOLOR_ARGB(200,255,255,0));Und trotzdem ist die Ausgabe FPS: 0.00.
Sollte doch 99 sein?Eigentlich braucht die Funktion DrawText() ja LPCSTR. Wie wandle ich int am schnellsten in TCHAR oder am besten in LPCSTR um?
MfG
-
du wandelst da int in float um
so funzt das bei mir einwandfrei
TCHAR szFps[128];
float sf = 99.552698;
sprintf(szFps, "FPS: %.02f", sf);
MessageBox(szFps);
-
Hallo
bei mir bringt der Compiler (MinGW) bei deinem Code sogar eine Warnung.
Denn du must explizit sagen, das 99 eine Gleitkommazeit sein soll, sonstr versucht der Compiler eine Integer-Zahl als float zu interpretieren.sprintf_s(szFps, "FPS: %.2f", 99.0);bis bald
akari
-
Funzt, danke!
MfG
-
Es sei allerdings noch erwähnt, dass TCHAR und sprintf nicht zusammenpassen. Für TCHAR nimmst du am besten die Funktionen aus <tchar.h>. In dem Fall wäre das _stprintf bzw. _stprintf_s.