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

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

Войти
Регистрация
Восстановить пароль
 
gh05t
48 / 47 / 4
Регистрация: 03.04.2010
Сообщений: 99
#1

OnSize и 64 бита - C++

03.04.2010, 05:56. Просмотров 281. Ответов 0
Метки нет (Все метки)

Здравствуйте!
Пишу в Visual Studio 2008, приложение с диалоговым окном. Надо обработать OnSize. Добавил в класс CMDlg

afx_msg void OnSize(UINT nType, int cx, int cy);

в карту

ON_WM_SIZE()

ну и саму реализацию

C++
1
2
3
4
5
void __fastcall CMDlg::OnSize(UINT nType, int cx, int cy)
{
    CWnd * hl = GetDlgItem(IDC_LIST1);
    hl->MoveWindow(7, 26, cx - 14, cy - 33, 1);
}
В 32 битах все работает норм. При переходе на 64 бита программа вылетает при запуске с необработанным исключением. При отладке увидел, что функция OnSize берет параметры из стека, хотя должна из регистров, ведь в 64 битах применяется fastcall. Как сказать компилятору, чтобы он вызывал OnSize по нужному соглашению вызовов? Добавление __fastcall перед именами функций ничего не дало...
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.04.2010, 05:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос OnSize и 64 бита (C++):

Создать 2 переменные, одна из которых хранит 2 старших бита исходного числа, другая 2 младших бита этого числа - C++
Дано число. Создать 2 переменные, одна из которых хранит 2 старших бита исходного числа, другая 2 младших бита этого числа. код частично...

Извлечь 3 бита числа A, начиная со второго и вставить их в число B, начиная с первого бита - C++
Ввести целое A. Извлечь 3 бита числа A, начиная со второго и вставить их в число B, начиная с ервогоп бита. B=1A05h.

Установка бита - C++
Дано целое число A и целое число k. Выведите число, которое получается из числа A установкой значения k-го бита равному 1.

Копирование бита - C++
Надо упростить и оптимизировать строку *p=((*p&0x80)>>8)|(*p&0x80);. Задача - скопировать (не переместить) старший бит байта в младший бит...

Обработка бита - C++
Название Размерность Тип N 16 вход M 4 вх P ...

Проверка бита - C++
Всем привет. Хотел спросить знающих людей, как можно проверить бит в байте. То есть, допустим, есть unsigned char "01010101". Какими...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.04.2010, 05:56
Привет! Вот еще темы с ответами:

Обработка бита - C++
На входе даны два 8-х разарядных числа IN_0, IN_1. Если на пятом месте в IN_0 стоит 0, то поменять знак числа IN_1,(и вывести...

Замена бита единицей - C++
Как реализовать данное условие? Ввести последовательность из 8 целых чисел. В каждом втором числе заменить ( i-1)-й бит единицей, где...

Проверка бита на единицу - C++
Подскажите, корректно ли такое сравнение if((paramData &= 0x80) == 1) // проверка на наличие единицы(1) в 8-ом бите данного байта длины...

Наличие бита в байте - C++
Подскажите, правильна ли реализация проверки наличия бита в байте #define MARK 0x02 .. if (dataRead & MARK) { ...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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