Unicode (Zeichen) to String | how?
-
Sehr geehrte Comunity
Ich habe vor ca. einem Monat angefangen zu programmieren und bräuchte nun ein wenig Hilfe.
Es geht um das Sonderzeichen "Zero Width No-Break Space (U+FEFF)" welches ich hinter einem String setzen möchte.Soweit bin ich schon:
#include <string.h> #include <stddef.h> #include <stdio.h> wchar_t Zeichen = L'\uFEFF'; if(g.Config.Enable) str_format(g_Config.String1,sizeof(g_Config.String1),"%s%s",g_Config.String1,Zeichen);
Nun .. kommt keine Fehlermeldung jedoch crasht der Client wenn ich Enable auf 1 setze(an mache)
Ich denke es liegt dadran das Zeichen ja noch ein Char ist und man ihn erst zu einem String umwandeln muss.
Und hier weiß ich nicht wie ich "wchar_t Zeichen = L'\uFEFF';" zu einem String umwandle bzw das Zero width Space?Ich hoffe auf Hilfe
Mfg. Schokobanane
ps. Ich weiß nicht wie ich die Codepage für den Compiler änder
-
Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x, bzw. C++11) in das Forum C (C89 und C99) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Wie wär's mit
wchar_t * Zeichen = L"\uFEFF";
?
Übrigens ist meines Wissens uFEFF als ZWNBSp deprecated.
Man soll wohl statt dessen u2060 benutzen.uFEFF soll nur noch als BOM verwendet werden.
-
UCN gibt es erst ab C99, aber damit sollte es dann auch funktionieren.