Форум программистов, компьютерный форум CyberForum.ru

std::string to SCtring - C++

Восстановить пароль Регистрация
 
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 292
16.10.2013, 17:29     std::string to SCtring #1
После выполнения этого кода выводится не "123" а какие-то каракули как это исправить?
C++
1
2
string s = "123";
    this->SetDlgItemText(RESULT_SHOW, (LPCTSTR)s.c_str());
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2013, 17:29     std::string to SCtring
Посмотрите здесь:

std::string C++
std:string C++
std::string -> std::wstring C++
Ошибка: отсутствует оператор ">>"; типы операндов: std::istream >> std::string C++
C++ std::string + std::remove
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
16.10.2013, 18:16     std::string to SCtring #2
а если так?
C++
1
this->SetDlgItemText(RESULT_SHOW, "123");
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
16.10.2013, 18:20     std::string to SCtring #3
C++
1
2
string s = "123";
    this->SetDlgItemTextA(RESULT_SHOW, s.c_str());
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 292
16.10.2013, 18:23  [ТС]     std::string to SCtring #4
Цитата Сообщение от Raali Посмотреть сообщение
а если так?
error C2664: CWnd::SetDlgItemTextW: невозможно преобразовать параметр 2 из "const char [4]" в "LPCTSTR"
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции

Добавлено через 1 минуту
Цитата Сообщение от kazak Посмотреть сообщение
string s = "123";
* * this->SetDlgItemTextA(RESULT_SHOW, s.c_str());
Та же ошибка..
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
16.10.2013, 18:26     std::string to SCtring #5
Цитата Сообщение от Insane__ Посмотреть сообщение
Та же ошибка..
С трудом верится, Вы добавили суффикс А к концу функции?
this->SetDlgItemTextA(RESULT_SHOW, s.c_str());
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 292
16.10.2013, 18:28  [ТС]     std::string to SCtring #6
Цитата Сообщение от kazak Посмотреть сообщение
С трудом верится, Вы добавили суффикс А к концу функции?
this->SetDlgItemTextA(RESULT_SHOW, s.c_str());
error C2039: SetDlgItemTextA: не является членом "CConvertDlg"
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
16.10.2013, 18:40     std::string to SCtring #7
а теперь так?
C++
1
this->SetDlgItemText(RESULT_SHOW, L"123");
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
16.10.2013, 18:41     std::string to SCtring #8
Уточнять нужно, какие функции используете.
Попробуйте так
C++
1
this->SetDlgItemTextA(RESULT_SHOW, L"123");
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 292
16.10.2013, 18:45  [ТС]     std::string to SCtring #9
Цитата Сообщение от Raali Посмотреть сообщение
а теперь так?
Код C++
1
this->SetDlgItemText(RESULT_SHOW, L"123");
Так работает, но есть одна проблемка, данные хранятся в std::string.
В const char* я могу превратить, но к нему "L" применить нельзя..
Что-то такоє сделать то нельзя: this->SetDlgItemText(RESULT_SHOW, L(s.c_str()));
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
16.10.2013, 18:46     std::string to SCtring #10
Цитата Сообщение от Insane__ Посмотреть сообщение
данные хранятся в std::string.
храни теперь их в std::wstring
можно еще использовать MultiByteToWideChar (MSDN)
а еще можно в свойствах проекта убрать юникод
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 292
16.10.2013, 18:50  [ТС]     std::string to SCtring #11
Цитата Сообщение от Raali Посмотреть сообщение
храни теперь их в std::wstring
И что мне это даст?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2013, 18:53     std::string to SCtring
Еще ссылки по теме:

C++ Как привести std::wstring к std::string?
C++ Std::string and std::wstring convert
C++ 'string' : undeclared identifier, std::string

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
16.10.2013, 18:53     std::string to SCtring #12
Цитата Сообщение от Insane__ Посмотреть сообщение
И что мне это даст?
c_str() будет возвращать не (LPCSTR) как раньше а нужный (LPCTSTR)
но и заполнять стринги придется через L""
Yandex
Объявления
16.10.2013, 18:53     std::string to SCtring
Ответ Создать тему
Опции темы

Текущее время: 21:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru