wchar_t einzelne Bytes ansprechen
-
Mit anderen Worten: das b ist weg. Und das ist ja auch kein Wunder ' ' ist für EIN Zeichen - das L ändert da nichts dran.
-
Wenn ich das 'L' weglasse klappt es wunderbar. Aber mit Warnung.
-
Ick glaube auch nicht, dass du auf diese weise 2 chars in ein wchar_t quetschen kannst. was hast du überhaupt vor?
-
Andromeda schrieb:
was hast du überhaupt vor?
meta_string<'my', ' ', 'awe', 'some', ' ', 'str', 'ing'>::str
-
accesspoint schrieb:
Andromeda schrieb:
was hast du überhaupt vor?
meta_string<'my', ' ', 'awe', 'some', ' ', 'str', 'ing'>::str
Ein Template das Strings zusammenklebt, wenn ich das richtig sehe?
Das gibt es doch bestimmt schon.
-
Andromeda schrieb:
Das gibt es doch bestimmt schon.
In Boost.Mpl gibts das soweit ich weiß.
Aber ich hab halt Spaß daran ein eigenes meta_string<> zu bauen.
-
accesspoint schrieb:
Andromeda schrieb:
Das gibt es doch bestimmt schon.
In Boost.Mpl gibts das soweit ich weiß.
Aber ich hab halt Spaß daran ein eigenes meta_string<> zu bauen.Dann viel Spaß noch. Ick bin eher so der C-Coder und habe leider keine Ahnung von C++ Templates.
-
Und weshalb willst du das genau haben?
-
Techel schrieb:
Und weshalb willst du das genau haben?
Damit ich mir einen runterholen kann.
-
du könntest schreiben char *p = (char*) &wc und dann kannst du mit *p oder p[0] auf das letzte und mit *(p+1) oder p[1] auf das erste byte zugreifen.
-
accesspoint schrieb:
Techel schrieb:
Und weshalb willst du das genau haben?
Damit ich mir einen runterholen kann.
wer dumm fragt...
-
Meinst du? Ich finde die Frage schon berechtigt, schließlich händelst du da mit höchst compilerspezifischen Sachen herum. Heißt: wchar_t-Literale mit mehreren Zeichen wie bei char gibt's nicht.
-
Ansonsten kannst du für dein Vorhaben strings in templates zu bekommen dir auch mal das anschauen:
(nur im globalen scope deklarierbar) https://github.com/5cript/mplex/blob/master/string/string.hpp#L108
(Copy Paste geht nicht, weil das krams aus meiner lib benutzt, die nur dazu da war mir metaprogrammierung beizubringen, sollte sich aber austauschen lassen mit standardmitteln)#include "string/string.hpp" MAKE_STRING(Bla, "String content as literal"); int main() { mplex::print_single <Bla>(std::cout); // prints type to cout. // -> mplex::string <(char)83, (char)116, (char)114, ...> }
oder überall:
https://github.com/5cript/mplex/blob/master/string/inline_string.hpp#include "string/inline_string.hpp" int main() { mplex::print_single <SHORT_STRING("Hello World!")>(std::cout); // -> mplex::string <(char)72, (char)101, ...> }
-
Techel schrieb:
Meinst du? Ich finde die Frage schon berechtigt, schließlich händelst du da mit höchst compilerspezifischen Sachen herum. Heißt: wchar_t-Literale mit mehreren Zeichen wie bei char gibt's nicht.
und weiter?
wenn ich hier ne frage stelle wie was geht, ist das letzte was ich hören will: "wieso was hast du denn vor?" total dumm, unnötig und absolut unproduktiv. Ich finde er hat die absolut passende antwort gegeben
-
also wenn man andere leute dafür bezahlt, dass diese einem das denken und lernen abnehmen, könnte man sich so etwas heraus nehmen, ansonsten ist so etwas unpraktisch.
-
looooooool schrieb:
accesspoint schrieb:
Techel schrieb:
Und weshalb willst du das genau haben?
Damit ich mir einen runterholen kann.
wer dumm fragt...
rofl
-
looooooool schrieb:
wenn ich hier ne frage stelle wie was geht, ist das letzte was ich hören will: "wieso was hast du denn vor?"
Diese Meinung teile ich. Mindestens gehört aber eine ordentliche Antwort auf die Frage dazu, just my 2 cts.