Converter para string em C++

Olá!

Alguém sabe como faço para converter algo do tipo LPTSTR para string?

No parâmetro do tipo LPTSTR obtive a linha de comando, mas preciso que o conteúdo seja string para poder usar na função strtok()… alguma dica?

Obrigada!!

Não é melhor usar a wcstok no lugar?

Não sei se você está compilando em modo Unicode ou ANSI.

Se estiver compilando em modo ANSI (ou MBCS), então é tão simples quanto:

LPTSTR ts = _T("Hello, world!");
std::string str (ts);

Se estiver compilando em modo Unicode (que eu realmente não recomendo, exceto quando você sabe o que está fazendo) você pode usar a std::wstring, que é uma string que usa wchar_t em vez de char (o wchar_t do C++ é o char do Java, ou seja, tem 2 bytes).
Neste caso:

LPTSTR ts = _T("Hello, world!");
std::wstring str (ts);

Se quiser deixar para os dois modos, você pode fazer:

LPTSTR ts = _T("Hello, world!"); std::basic_string<TCHAR> str(ts);