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

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

Войти
Регистрация
Восстановить пароль
 
Korbofos
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 148
#1

Макрос - C++

23.03.2012, 07:44. Просмотров 348. Ответов 9
Метки нет (Все метки)

Как в макросе интовское число разделить на число с запятой?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
17188 / 5442 / 337
Регистрация: 30.03.2009
Сообщений: 14,767
Записей в блоге: 26
23.03.2012, 09:22     Макрос #2
Так же, как и вне макроса
Korbofos
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 148
23.03.2012, 09:29  [ТС]     Макрос #3
Дефайны по умолчанию int
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
17188 / 5442 / 337
Регистрация: 30.03.2009
Сообщений: 14,767
Записей в блоге: 26
23.03.2012, 09:31     Макрос #4
Цитата Сообщение от Korbofos Посмотреть сообщение
Дефайны по умолчанию int
Бред. Что такое дефайны можешь почитать тут http://www.cyberforum.ru/blogs/18334/blog100.html. Или кратенькую выдержку тут: Для чего нужен define?

Пока ты внятно не задашь вопрос, вряд ли кто-то тебе на него ответит
Korbofos
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 148
23.03.2012, 09:52  [ТС]     Макрос #5
C
1
#define calc(us) (((unsigned long int)(us*10) * (unsigned long int)(73728 / 80000.0   * 0x10000UL)) >> 16)
Хочу сделать проще
C
1
(us*10)/1.085
только компилятор выдаёт ошибку
retmas
Жарю без масла
842 / 724 / 158
Регистрация: 13.01.2012
Сообщений: 1,671
23.03.2012, 10:54     Макрос #6
C
1
#define calc(us) (((us)*10)/1.085)
Korbofos
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 148
23.03.2012, 10:58  [ТС]     Макрос #7
Цитата Сообщение от retmas Посмотреть сообщение
C
1
#define calc(us) (((us)*10)/1.085)
Я знаю что так Он ошибку на это и выдаёт
retmas
Жарю без масла
842 / 724 / 158
Регистрация: 13.01.2012
Сообщений: 1,671
23.03.2012, 10:59     Макрос #8
кто он и какую ошибку
easybudda
Эксперт С++
 Аватар для easybudda
9412 / 5435 / 917
Регистрация: 25.07.2009
Сообщений: 10,428
23.03.2012, 11:00     Макрос #9
C
1
#define calc(us) ( (us) / (0.1085) )
не то же самое?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2012, 12:22     Макрос
Еще ссылки по теме:

C++ макрос COMBINE
Не работает макрос C++
C++ Не работает макрос
C++ Макрос MyAssert
Макрос DPrint C++

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

Или воспользуйтесь поиском по форуму:
Korbofos
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 148
23.03.2012, 12:22  [ТС]     Макрос #10
Спс. только войнг выдаёт "потеря точности" но в эмуляторе вроде всё робит нормально, попробую в железе

Добавлено через 5 минут
C
1
#define calc(us) (((unsigned long int)(us*10) * (unsigned long int)(73728 / 80000.0   * 0x10000UL)) >> 16)
Вернулся к этому варианту, так мк быстрее вычесляет
Yandex
Объявления
23.03.2012, 12:22     Макрос
Ответ Создать тему
Опции темы

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