Russian Qt Forum
Ноябрь 23, 2024, 08:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: warning: assignment to `int' from `double'  (Прочитано 4411 раз)
Martiro
Гость
« : Март 11, 2009, 10:18 »

Как избавиться от оного?
Дело в том, что в коде просто необходимо переопределять переменные из даблов в инты, а компилятор ругается на них. И фиг бы с ним, но заказчик требует избавиться от них.
Буду рад вашим советам.  Улыбающийся
Записан
spirit
Гость
« Ответ #1 : Март 11, 2009, 10:21 »

а окрулить нельзя?
Записан
BRE
Гость
« Ответ #2 : Март 11, 2009, 10:26 »

Как избавиться от оного?
Дело в том, что в коде просто необходимо переопределять переменные из даблов в инты, а компилятор ругается на них. И фиг бы с ним, но заказчик требует избавиться от них.
Буду рад вашим советам.  Улыбающийся
Явно делай приведение типов:
Код
C++ (Qt)
double dVar =100.1000;
int iVar = (int)dVar;
 
Компилятор переживает, что ты теряешь точность. А так он будет понимать, что ты знаешь что делаешь.  Подмигивающий
Записан
Martiro
Гость
« Ответ #3 : Март 11, 2009, 10:39 »

Цитировать
Явно делай приведение типов:
Код
C++ (Qt)
double dVar =100.1000;
int iVar = (int)dVar;
 
Компилятор переживает, что ты теряешь точность. А так он будет понимать, что ты знаешь что делаешь.  Подмигивающий
Пробовали, но получается, что из 8 байт дабла выбираются 4... и на этом моменте кое-где в приложении "слетает". Сейчас пытаемся выискать причину...
Записан
Tonal
Гость
« Ответ #4 : Март 11, 2009, 11:09 »

У даблов больший диапазон значений, так что при преобразовании может произойти потеря, причём независимо от того явно или неявно делается преобразование.
Так что разбирайтесь с кодом. Улыбающийся

П.С. Похоже заказчик совершенно прав. Улыбающийся
Записан
BRE
Гость
« Ответ #5 : Март 11, 2009, 11:10 »

Цитировать
Явно делай приведение типов:
Код
C++ (Qt)
double dVar =100.1000;
int iVar = (int)dVar;
 
Компилятор переживает, что ты теряешь точность. А так он будет понимать, что ты знаешь что делаешь.  Подмигивающий
Пробовали, но получается, что из 8 байт дабла выбираются 4... и на этом моменте кое-где в приложении "слетает". Сейчас пытаемся выискать причину...
Нужен целый тип?
Попробуй qint64.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.093 секунд. Запросов: 21.