Wie konvertiert long zu LPCWSTR?
wie kann ich umwandeln lange LPCWSTR in C++? Ich brauche die Funktion wie diese:
LPCWSTR ToString(long num) {
wchar_t snum;
swprintf_s( &snum, 8, L"%l", num);
std::wstring wnum = snum;
return wnum.c_str();
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre Funktion mit dem Namen "Zeichenfolge", und es ist in der Tat einfacher (und allgemeiner) zu konvertieren zu einem string als convert "LPCWSTR":
Wenn Sie eine API benötigt, die eine
LPCWSTR
verwenden, können Siestd::wstring::c_str()
:Diese Funktion funktioniert nicht, weil wnum.c_str() verweist auf Speicher wird freigegeben, wenn wnum wird zerstört, wenn die Funktion zurückgibt.
Müssen Sie eine Kopie des Strings zurück, d.h.
dann, wenn Sie fertig sind, verwenden das Ergebnis Sie brauchen, um zu befreien, D. H.