Aus "int" u. "char" ein Char machen
-
Ich habe nun eine variable:
int i = 1;
jetzt möcht ich ein car erstellen, sodass diser char dann folgendermaßen aussieht:
1.bla
aber wie kann ich den wert von i nehmen, und hinten noch ein .bla dran hängen, und das ganze als char speichern?
-
als char kannst du das gar nicht abspeichern, ein char stellt nämlich nur jeweils einen buchstaben dar.
-
char text[ 20 ]; int i = 1; sprintf( text, "%i.bla", i );
cheers, Swordfish
-
oder so:
char text[] = "-.bla"; int i = 1; text[0] = (char)('0'+i);
-
...wird eben bei
i > 9
lustig.cheers, Swordfish
-
Ja "i" soll später ziehmlich groß werden^^
-
oder du gehst den C++-Umweg mit std::stringstream
#include <sstream> #include <cstring> int main() { char buf[128] = { 0 }; int i = 1; std::stringstream ss; ss << i << ".bla"; std::strcpy(buf, ss.str().c_str()); }
-
Weiß jemand wie ich ein Char[49] in WCHAR * convertieren kann?
via (WCHAR*)text funzt das nicht wirklich
-
Oder wie könnte ich direkt mit sprintf einen WCHAR* bearbeiten? Gibt es dafür vieleicht einen andere funktion, wie sprintx oder so?
-
Showball schrieb:
Oder wie könnte ich direkt mit sprintf einen WCHAR* bearbeiten? Gibt es dafür vieleicht einen andere funktion, wie sprintx oder so?
Mit den Unicode Funktionen z.B.
suchst du vielleicht wsprintf ?Ansonsten schau mal in der Boardsuche, da gibt es genügend Threads mit Lösungen, die die Umwandlung char -> wchar_t bzw. MBCS zu UNICODE und zurück behandeln.