Aktuelle Zeit: 08.01.2025, 20:41

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: wchar_t to char
BeitragVerfasst: 07.06.2007, 08:19 
Offline
Newsposter
Benutzeravatar

Registriert: 12.03.2007, 10:42
Beiträge: 338
Wohnort: Berlin
Ok heute hab ich mal nen kleines problem.
ich hab zwar schon gegoogelt aber nichts passendes gefunden und wie ihr am Thema sehen könnt,
suche ich eine Funktion/ ein Objekt mit dem ich wchar_t zu car convertieren kann.

Mein Problem ist nämlich das IGUIEditBox::getText() wchar_t zurückgibt und ich für RakNet aber ein char Array benötige.

Hoffe ihr könnt mir helfen :(


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: wchar_t to char
BeitragVerfasst: 07.06.2007, 09:31 
Offline
Benutzeravatar

Registriert: 06.06.2007, 00:44
Beiträge: 6
Wohnort: Germany
Code:
wchar_t* SomePointer;
stringc Temp(SomePointer);
char *AnotherPointer=Temp.c_str();

//oder in andere Richtung

char* SomePointer;
stringw Temp(SomePointer);
wchar_t *AnotherPointer=Temp.c_str();


oder...

Code:
// convert from char* to wchar_t*
mbstowcs(wchar_t*, const char*, size_t);

// convert from wchar_t* to char*
wcstombs(char*, const wchar_t*, size_t);


HTH,
Duncan


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: wchar_t to char
BeitragVerfasst: 07.06.2007, 10:18 
Offline
Newsposter
Benutzeravatar

Registriert: 12.03.2007, 10:42
Beiträge: 338
Wohnort: Berlin
Danke jetzt kann ich endlich weiter arbeiten :D

Die erste Variante funktioniert bis stringc Temp(somePointer); aber dann wirds auch wieder schwieriger

das zweite funktioniert gut nur das ich die anzahl der Bytes selbst festlegen musste, aber das is nicht schlimm

(ich musste vorher nur noch nie zeichenketten konvertieren)


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: wchar_t to char
BeitragVerfasst: 07.06.2007, 10:26 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
Zitat:
nur das ich die anzahl der Bytes selbst festlegen musste

Nein, musst du nicht, das dritte Argument legt die Maximalgröße fest, ab der es einen Buffer Overflow geben würde, die Funktion konvertiert maximal soviele Zeichen. kann aber auch weniger konvertieren.
Quelle:
http://www.opengroup.org/pubs/online/79 ... tombs.html

Übrigends liefern die Funktionen anscheinend die Anzahl der Zeichen im Eingangsstring zurück, der Wert kann auch größer als der dritte Parameter sein...

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de