|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.08.2009, 13:03 | #1 |
Пользователь
Регистрация: 18.06.2009
Сообщений: 15
|
Win32 как вывести на экран значение переменной
Привет. Я сейчас занимаюсь Win32 API. И не знаю, как вывести на экран значение переменной.
Например, LONG long = 50; Как мне вывести на экран в windows-программе значение переменной long в отдельном окне? Я пробовал применять ф-ию MessgeBox(), но в этой ф-ии тип выводимого значения должен быть LPCTSTR. Я пробовал писать так: MessageBox( hWnd, static_cast<LPCWSTR>(long), L"", MB_OK); Но программа не компилируется, потому что не может преобразовать из LONG в LPCTSTR. Еще пробовал так: MessageBox( hWnd, (LPCTSTR)long, L"", MB_OK); Тогда прога компилируется, но при выполнении мессаджбокс выводит пустую строку вместо значения переменной лонг, равного 50. Так как, черт подери, мне преобразовать переменную LONG в LPCTSTR, чтобы потом можно было вывести ее на экран в виде текста? Я начинающий с++ программист, так что прошу простить меня за невежество в этом плане. Последний раз редактировалось STill_ace; 22.08.2009 в 13:08. |
22.08.2009, 13:10 | #2 |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
Нужно сначала сконвертить число в строку.
Пример: Код:
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
22.08.2009, 13:24 | #3 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
или так:
Код:
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
22.08.2009, 13:54 | #4 |
Пользователь
Регистрация: 18.06.2009
Сообщений: 15
|
Спасибо. Но почему-то в обоих вариантах мессадж бокс выводит какие-то китайские иероглифы вместо цифры...
|
22.08.2009, 14:01 | #5 | |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
Цитата:
Попробуйте еще так. Это не должно помочь, но вдруг... Код:
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
|
22.08.2009, 14:29 | #6 |
Пользователь
Регистрация: 18.06.2009
Сообщений: 15
|
Ноль в конце тоже не помог.
Например, пишу вот такой код: Код:
|
22.08.2009, 14:40 | #7 |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
А вот так попробуйте:
Код:
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] Последний раз редактировалось Sazary; 22.08.2009 в 14:43. |
22.08.2009, 14:58 | #8 | |
Пользователь
Регистрация: 18.06.2009
Сообщений: 15
|
Еще я обнаружил, что если, например, написать вот такой код ...
Код:
Цитата:
|
|
22.08.2009, 15:24 | #9 | |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
А код из 7-го поста тоже не работает?
Цитата:
Возможно, в настройках проекта/среды нужно копать.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
|
22.08.2009, 15:29 | #10 | |
Пользователь
Регистрация: 18.06.2009
Сообщений: 15
|
Цитата:
и английские буквы тоже в виде иероглифов. Вот такой вывод работает нормально, и если вместо Hello World написать по русски Привет Мир, то тоже нормально выводится. MessageBox( NULL, L"Hello World", L"box", MB_OK ); Судя по всему, проблема в преобразовании типов. Когда мы преобразовываем char* в LPCWSTR (LPCWSTR)ch, происходит какая-то фигня, и результат получается в виде иероглифов. Последний раз редактировалось STill_ace; 22.08.2009 в 15:40. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывести на экран минимальное значение среди составных чисел массива. | dorofei | Помощь студентам | 33 | 24.05.2009 20:42 |
Как прочитать значение переменной javascript в TWebBrowser? | u961 | Работа с сетью в Delphi | 2 | 01.04.2009 23:22 |
Как вывести на экран... (Делфи)!!! | DjVidan | Помощь студентам | 14 | 09.03.2009 16:31 |
как получить значение переменной | smoke888 | PHP | 3 | 20.06.2008 02:11 |
Как получить значение системной переменной в С++ | PersonaGrata | Общие вопросы C/C++ | 2 | 29.02.2008 22:14 |