Hallo,
ich weiß, mich nervt es selbst, ständig wieder fragen zu müssen, weil etwas unter Linux nicht so funktioniert, wie ich es will -.-' Hoffe mal, ihr beantwortet mir trotzdem meine Frage:
Ich arbeite mit Code::Blocks, und der SFML, damit ich mit meinen Programmen nicht nur an Windows gebunden bin... Jetzt habe ich unter Ubuntu einfach mal Code::Blocks installiert, und mein Projekt, aus der Windows-version geladen. Alles schien zu funktionieren, allerdings lässt es sich nicht direkt kompilieren:
|
C-/C++-Quelltext
|
1
2
|
wchar_t buffer[100];
swprintf(buffer, L"HP: %i", m_player->get_health());
|
Hier bringt er mir jetzt:
Fehler: ungültige Umwandlung von »const wchar_t*« in »size_t«
Argument 2 von »int swprintf(wchar_t*, size_t, const wchar_t*, ...)« wird initialisiert
Fehler: ungültige Umwandlung von »int« in »const wchar_t*«
Fehler: Argument 3 von »int swprintf(wchar_t*, size_t, const wchar_t*, ...)« wird initialisiert
Wenn ich daraus das mache:
|
C-/C++-Quelltext
|
1
2
|
char buffer[100];
sprintf(buffer, "HP: %i", m_player->get_health());
|
Funktioniert es.... für diesen Fall brauche ich nicht unbedingt Unicode, würde es aber trotzdem gerne verwenden, auch für die Zukunft...
Weiß jemand, wie ich es mache, damit es auch mit Unicode funktioniert?
Habe testweise mal Unicode defined (unter Windows nicht gebraucht), aber da bekomme ich plötzlich nen Error in der SFML/Unicode.hpp und der c++/typeinfo o_O