|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
|
Программа работает по разному в Debug'e и Release'e10.01.2014, 10:32. Показов 2645. Ответов 13
Метки нет (Все метки)
Добрый День! Суть проблемы: есть две программы адекватно работающие в debug'e но в release'e есть проблемы. В коде программ используется один и тот же файл .срр и соответственно одинаковый код. В этом коде есть switch который в этих программах работает по разному. При одних и тех же значениях параметра switch в одной программе производится выбор case4 а в другой case5. Вот огрызок кода:
switch (static_cast<int>(pal)) pal - имеет тип double может кто сталкивался с подобной проблемой?
0
|
|
| 10.01.2014, 10:32 | |
|
Ответы с готовыми решениями:
13
Программа работает по-разному на разных компах Программа без отладчика и с ним работает по-разному Программа работает по-разному в VS 2008 и в Code::Blocks |
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 10.01.2014, 11:10 | |
|
А код что, сверхсекретный, выложить полностью кусок никак?
0
|
|
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
||||||
| 10.01.2014, 11:22 [ТС] | ||||||
|
не секретный конечно, вот пожалуйста:
0
|
||||||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 10.01.2014, 11:24 | |
|
МихаилХ, как получается значение bit? Оно зависит от значений других переменных? Как получаются эти значения? И так до самого верха иерархии.
0
|
|
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
|
| 10.01.2014, 11:37 [ТС] | |
|
Значение bit имеет диапазон от 0 до 1. От других переменных никак не зависит, это значение я получаю скажем так от "прибора" подключенного к компу. Значение нигде не обрабатывает и никаких операций с этим значением не происходит. Т.е. я передал в ф-ю например 0.9465784 умножил на 5 получил 4.скопейками а switch вместо 4 выбирает 5, а в другой программе все нормально. Я ответил на вопрос или нет?))
0
|
|
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
|
| 10.01.2014, 11:39 [ТС] | |
|
в переменной может быть число bit от 0 до 1.
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
||
| 10.01.2014, 11:59 | ||
|
Пробовали выводить значения всех зависимых для pal переменных в дебаге и релизе? Ни на какой стадии не получается так, что значение должно быть одно, а получается другое? (Уверен, что на каком-то этапе либо в дебаге, либо в релизе такое наблюдается, другой вопрос - почему?)
0
|
||
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
||
| 10.01.2014, 12:25 [ТС] | ||
|
По теме: пробовал и в релизе и в дебаге. Значения поступают приблизительно одинаковые на всем диапазоне. Проблема, как мне кажется, не в числах так как до switch числа доходят одни и те же а в релизе при одних и тех же значениях switch делает разный выбор. К примеру пришло на switch 4.834657: в дебаге выбирается case 4: а в релизе case 5:. Просто в другой программе и в дебаге и в релизе все работает одинаково.
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 10.01.2014, 12:53 | |
|
МихаилХ, погодите, а вы результат static_cast'а выводили?
1
|
|
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
|
| 10.01.2014, 13:07 [ТС] | |
|
Вот где собака то зарыта) Водной программе static_cast возвращает не 4 а 5.
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 10.01.2014, 13:11 | |
|
МихаилХ, это при значении pal меньше 5? Это ненормальное поведение, дробная часть должна отбрасываться.
0
|
|
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
|
| 10.01.2014, 13:17 [ТС] | |
|
Да, почему то при значении pal меньше 5 static_cast возвращает 5. Причем и int(pal) тоже 5 возвращает.
Добавлено через 2 минуты Это может от настроек проекта как то зависеть?
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 10.01.2014, 13:20 | |
|
МихаилХ, на счёт проектов не знаю, знаю, как должно быть по стандарту.
1
|
|
|
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 74
|
|
| 10.01.2014, 13:23 [ТС] | |
|
Пора создавать новую тему))
0
|
|
| 10.01.2014, 13:23 | |
|
Помогаю со студенческими работами здесь
14
программа работает по-разному на одном и том жке компе?????? Вывести символ из масива ASCII в debuge Программа отображается по разному на 7 и XP По разному работает QGraphicsPathItem Шейдер работает по разному Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|