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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 293
#1

std::string to SCtring - C++

16.10.2013, 17:29. Просмотров 290. Ответов 11
Метки нет (Все метки)

После выполнения этого кода выводится не "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++
int to std::string C++
std:string C++
std::string в char* C++
C++ std::string
Аналог std::string C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 1
16.10.2013, 18:16     std::string to SCtring #2
а если так?
C++
1
this->SetDlgItemText(RESULT_SHOW, "123");
kazak
 Аватар для kazak
3030 / 2351 / 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
Сообщений: 293
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
3030 / 2351 / 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
Сообщений: 293
16.10.2013, 18:28  [ТС]     std::string to SCtring #6
Цитата Сообщение от kazak Посмотреть сообщение
С трудом верится, Вы добавили суффикс А к концу функции?
this->SetDlgItemTextA(RESULT_SHOW, s.c_str());
error C2039: SetDlgItemTextA: не является членом "CConvertDlg"
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 1
16.10.2013, 18:40     std::string to SCtring #7
а теперь так?
C++
1
this->SetDlgItemText(RESULT_SHOW, L"123");
kazak
 Аватар для kazak
3030 / 2351 / 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
Сообщений: 293
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
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 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
Сообщений: 293
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
Еще ссылки по теме:

char* vs std::string C++
std::string, потоки C++
Std::string compare C++
Std::string C++
C++ PTCHAR в std::string

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

Или воспользуйтесь поиском по форуму:
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 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
Ответ Создать тему
Опции темы

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