Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

bassdscho

Alter Hase

  • »bassdscho« ist der Autor dieses Themas

Beiträge: 1 056

Wohnort: Heuchlingen

Beruf: Student - Technische Informatik

  • Private Nachricht senden

1

23.09.2004, 14:20

Wie geb ich float Variablen mit DrawText aus?

Hi,
ich habs schon mit ner Konvertierung versucht.

static_cast<const char*>(fNothingDone)

geht aber auch nicht.
Verlierer jammern immer von wegen ihr bestes!
Sieger gehen nach Hause und vögeln die Ballkönigin!

2

23.09.2004, 15:06

C-/C++-Quelltext

1
2
3
4
5
6
float irgendwas;
// irgendwas bearbeiten

char* buffer;
buffer = new char[];
sprintf(buffer, "%f", irgendwas);
DrawText(/*Parameter*/);

So müsst's funzen.

Patrick

Alter Hase

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

3

23.09.2004, 18:05

Na na na, wer wird denn da gleich mit new/delete und casts arbeiten? ;)

FAQ: https://www.spieleprogrammierer.de/index.php?option=com_forum&Itemid=43&page=viewtopic&t=698

- Patrick ;)

bassdscho

Alter Hase

  • »bassdscho« ist der Autor dieses Themas

Beiträge: 1 056

Wohnort: Heuchlingen

Beruf: Student - Technische Informatik

  • Private Nachricht senden

4

24.09.2004, 01:19

Danke, jetzt Funktionierts
Verlierer jammern immer von wegen ihr bestes!
Sieger gehen nach Hause und vögeln die Ballkönigin!

Steven77

Alter Hase

Beiträge: 515

Wohnort: Münster - Gievenbeach

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

5

24.09.2004, 10:56

template vs. sprintf

Hi,
die Lösung von Patrick ist eine elegante Lösung, allerdings nicht sehr effizient, alleine deswegen, weil ein doppelter Cast durchgeführt wird (selbst wenn entweder Quelle oder Ziel bereits ein String ist).
Wie gesagt, es ist elegant und einfach zu handhaben, doch bei ohnehin schon einfachen Sachen, wie z.B. das Anzeigen der FPS, so ist die "sprintf-Variante" nicht zu verachten (natürlich ohne new/delete):

C-/C++-Quelltext

1
2
3
4
5
6
7
float fFPS;
// ...

// bla und blub

// ...

static char fps[12];
sprintf(fps, "FPS: %.1f", fFPS);
// DrawText etc.


"static" ist in diesem Fall deswegen sehr hübsch, da so unnötige Stack-Operationen wegfallen und die piseligen 12 Byte, die permanent reserviert sind, fallen unter'n Tisch.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

6

24.09.2004, 14:53

sprintf soll recht langsam sein......

bassdscho

Alter Hase

  • »bassdscho« ist der Autor dieses Themas

Beiträge: 1 056

Wohnort: Heuchlingen

Beruf: Student - Technische Informatik

  • Private Nachricht senden

7

24.09.2004, 16:31

Des ist nur zum debuggen
Verlierer jammern immer von wegen ihr bestes!
Sieger gehen nach Hause und vögeln die Ballkönigin!

Werbeanzeige