GetWindowText wchar to double und zurück
-
case ID_SHOW1: TCHAR* clamda1; char* buf; wchar_t* wbuf; clamda1=new TCHAR[GetWindowTextLength(hLamda1)+1]; buf=new char[GetWindowTextLength(hLamda1)+1]; wbuf=new wchar_t[GetWindowTextLength(hLamda1)+1]; GetWindowText(hLamda1,clamda1,GetWindowTextLength(hLamda1)+1); lamda1=wcstod(clamda1,NULL); //wchar in double umwandeln lamda1*=10; //irgend was sickes berechnen sprintf(buf,"%f",lamda1); //double in char umwandeln for(int i=0;i<=(GetWindowTextLength(hLamda1)-1);i++) //char in wchar umwandeln wbuf[i]=buf[i]; wbuf[GetWindowTextLength(hLamda1)]='\0'; SetWindowText(hWnd,wbuf); break;Geht das kürzer, wenn die richtige double to wchar Funktion ( _esvct() oder sowas) irgend nen Fehler in ner Debugger Hook *.h Datei hervorruft und man es dadurch also nicht verwenden kann?? Weil das scheint mir doch irgendwie umständlich
Wie wandelt man dennn allgemein einen Datentyp in nen andern um, irgendwie was hin- und hershiften oder so vllt? 
-
einfach einen TCHAR Piffer verwenden und _stprintf verwenden.
Die Art und Weise wie Du hier char to wchar_t umwandelst ist falsch! Verwende mbtowc, oder noch besser entsprechende T2A A2T A2W Makros.
-
wchar_t ist ein unsigned short (16bit)
-
Klingt gut, weil dass das so nicht richtig is, war mir irgendwie klar

Aber was ist ein Piffer?Edit: Habs jetzt:
_stprintf(buf,TEXT("%f"),lamda1); //buf is TCHAR und lamda1 is double
-
Puffer
Sorry i und u liegen für meine Griffel manchmal zu nahe beieinander...