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

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

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

OnSize и 64 бита - C++

03.04.2010, 05:56. Просмотров 278. Ответов 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 перед именами функций ничего не дало...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.04.2010, 05:56     OnSize и 64 бита
Посмотрите здесь:

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

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

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

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

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

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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