Я совершенно уверен, что это - глупая проблема, но это сводит меня с ума..
как я мог распечатать на консоли массив TCHAR?
DWORD error = WSAGetLastError();
TCHAR errmsg[512];
int ret = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, 0, error, 0, errmsg, 511, NULL);
я должен распечатать errmsg...
Это зависит от того, что такое TCHAR
. Если вы компилируете с включенным Unicode, TCHAR
определяется как wchar_t
. Затем вы можете использовать std :: wcout
, например:
std::wcout << L"Error: " << errmsg << '\n';
Если Unicode не включен, TCHAR
является обычным char
, и вы можете использовать обычный std :: cout
:
std::cout << "Error: " << errmsg << '\n';
Поиск в Google выявил это обсуждение , которое по существу рекомендует tprintf .