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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
titans2011
295 / 256 / 43
Регистрация: 27.09.2010
Сообщений: 1,058
#1

как перевести WORD в INT - C++

20.04.2012, 12:12. Просмотров 1578. Ответов 2
Метки нет (Все метки)

Всем привет. Продолжаю изучение WinApi. Возник такой вопрос. Я выделяю текст в EditBox , и получаю позиции выделенного текста таким образом:
C++
1
2
3
4
DWORD dwPosition = SendMessage(hEdit, EM_GETSEL, 0, 0);
    WORD wBeginPosition = LOWORD(dwPosition);
    WORD wEndPosition = HIWORD(dwPosition);
    int ky=(wEndPosition-wBeginPosition);
Мне нужно что бы в ky записалось число, и что бы я потом выделил под эти выделенные символы динамическую память.Я посмотрел по дебагеру, в ky ничего хорошего не записывается. Есть какой-то другой способ конвертации?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2012, 12:12     как перевести WORD в INT
Посмотрите здесь:
C++ Как перевести из char в int?
C++ как можно перевести `int*' to `UINT'
C++ Как перевести из WCHAR в int не потеряв цифру 0?
C++ Как перевести CString -ское число в Int?
C++ Как правильно перевести int и string в *char для записи в SQLlite?
C++ Как перевести массив строк в массив int
C++ Перевести char* в int
Перевести double в int C++
Перевести INT в STRING C++
Как понять int a(int x,int y, int z)? C++
C++ Массив int перевести в буфер
C++ Перевести число из int в сhar

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
20.04.2012, 12:13     как перевести WORD в INT #2
WORD == unsigned short int
DWORD == unsigned long int

В mingw реализовано вот так:
windef.h
C++
1
2
typedef unsigned short WORD;
typedef unsigned long DWORD;
titans2011
295 / 256 / 43
Регистрация: 27.09.2010
Сообщений: 1,058
20.04.2012, 12:23  [ТС]     как перевести WORD в INT #3
Тут в общем "петрушка" получается. По другому не назовёшь. Вот такой код у меня:
C++
1
2
3
4
5
6
7
8
DWORD dwPosition = SendMessage(hEdit, EM_GETSEL, 0, 0); 
                    WORD wBeginPosition = LOWORD(dwPosition);
                    WORD wEndPosition = HIWORD(dwPosition);
                    int ky=(int)(wEndPosition-wBeginPosition);
                                        TCHAR* buf= new TCHAR[textsize];
                    GetWindowText(hEdit, buf, textsize);    
                    buf2= new TCHAR[ky];
                    memmove(buf+wBeginPosition,buf2,sizeof(buf)*ky);
Может я лишние действия делаю, но в buf2 Всё время записывается такая крокозябрина. Т.е. что я хочу сделать. Я выделяю текст в EditBox и заношу его в буфер TCHAR* buf2. а buf у меня содержит весь текст, и зная границы выделения, я пытаюсь в buf2 поместить выделенный текст.
Изображения
 
Yandex
Объявления
20.04.2012, 12:23     как перевести WORD в INT
Ответ Создать тему
Опции темы

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