#5 30.08.07 11:54
Re: конвертация типов С++ -> Windows
sav написал(а):
нет нет, меня интересует из LPCTSTR в string
я нашел, что LPCSTR - то же самое что и const char*,
есть ли способ сразу в string конверить?
попробуй просто присвоить
Код: c++:
LPCSTR s; ... string a = (const char*)s;
вот пример, который работает
Код: c++:
#include <STRING> int main(int argc, char* argv[]) { std::string test; const char *s = "qwe"; test = s; printf("%s", test.c_str()); return 0; }
Offline
#7 05.09.07 10:31
Re: конвертация типов С++ -> Windows
конкретный пример из MSDN, который у меня не компилируется:
WIN32_FIND_DATA FindFileData;
char DirSpec[MAX_PATH];
HANDLE hFile=FindFirstFile(DirSpec, &FindFileData);
не может конвертировать из const char * to LPCWSTR
допустим, я вместо char DirSpec[MAX_PATH]; напишу:
wchar_t DirSpec[MAX_PATH];
тогда, вродебы не выдается ошибка во время компиляции, но если я хочу, чтобы пользователь ввел имя каталога:
cin.get(DirSpec, MAX_PATH);
теперь будет ругаться на cin.get, т.к. не сможет конвертировать в const char *
отсюда два вопроса:
1. как решить проблему, чтобы можно было пользоваться потоковыми классами С++ и функциями Windows
2. почему готовый пример MSDN не работает?
Offline
#9 05.09.07 15:59
Re: конвертация типов С++ -> Windows
скорее всего примеры старые а ты пользуешься 2005 студией.
To set this compiler option in the Visual Studio development environment
Open the project's Property Pages dialog box. For details, see Modifying Project Settings.
Click the C/C++ folder.
Click the Language property page.
Modify the Treat wchar_t as Built-in Type property.
Offline
#10 05.09.07 16:19
Re: конвертация типов С++ -> Windows
$up написал(а):
скорее всего примеры старые а ты пользуешься 2005 студией.
To set this compiler option in the Visual Studio development environment
Open the project's Property Pages dialog box. For details, see Modifying Project Settings.
Click the C/C++ folder.
Click the Language property page.
Modify the Treat wchar_t as Built-in Type property.
вечером попробую обязательно
GrAnD написал(а):
Попробуй вместо cin, cout использовать wcin и wcout
то же самое мне на rsdn рекомендовали, можно ли, чтобы по умолчанию вызывались при написании cin, cout их unicode аналоги: wcin, wcout??
Offline

