Hallo,
zunächst mein Code:
#include
using namespace std;
…
std::string st;
st.assign(„Testausgabe!“);
wchar_t msg_buff[256];
wsprintf(msg_buff,L"Teststring: %s",st);
MessageBox(msg_buff,L"Test");
Leider wird der String „Testausgabe!“ nicht ausgegeben! 
Wo liegt das Problem? Kann mir jemand helfen?
Danke i.V.
Gruß,
Beanpole
Hallo,
std::string st;
st.assign(„Testausgabe!“);
st = „Testausgabe!“; // assign ist overkill hier 
wchar_t msg_buff[256];
wsprintf(msg_buff,L"Teststring: %s",st);
wsprintf(msg_buff,L"Teststring: %s",st.c_str());
(http://www.cppreference.com/cppstring/c_str.html)
Versuch mal. Was war nochmal das „L“? Ist
das ein Makro, das nach wchar_t umwandelt?
Grüße
CMБ
Ne, so hats nicht geklappt.
Hab aber jetzt ne Lösung gefunden:
st.assign(L"Testausgabe!");
wchar_t msg_buff[256];
wsprintf(msg_buff,st.c_str(),0);
MessageBox(msg_buff,L"Test");
Die 0 bei wsprintf hab ich nur hingeknallt,
weil noch irgendein Parameter gefehlt hatte.
Was war nochmal das „L“? Ist
das ein Makro, das nach wchar_t umwandelt?
L bedeutet unsigned short* bzw. wstring!
Gruss,
Beanpole