![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
kvak |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 51 Регистрация: 5.5.2010 Пользователь №: 1690 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Здравствуйте. Интересуюсь следующим:
После некоторых преобразований у меня получаются числа, целая часть которых требует long int (8 байтов в моем случае), плюс дробная с точностью до 0.1 Допустим если беру максимальное положительное число, то оно будет такое: 9 223 372 036 854 775 807.9 и мне нужно сделать две вещи: 1. Какая-то переменная, которая его примет 2. Преобразовать его в QString, чтобы потом передать в QLineEdit. Вот незнаю как это сделать. Конечная цель, чтобы оно было в QLineEdit именно в такой записи, а не в экспоненциальной. и желательно конечно с пробелом через три числа. ________________ Еще вопрос по типам long double и double. Есть ли информация, какое максимальное целое они хранят. Как я понял в double не поместится это число. |
|
|
azure |
![]()
Сообщение
#2
|
Студент ![]() Группа: Участник Сообщений: 60 Регистрация: 24.12.2009 Пользователь №: 1332 Спасибо сказали: 5 раз(а) Репутация: ![]() ![]() ![]() |
double дает вам почти 16 значащих цифр, т.е. для вас этого недостаточно. Попробуйте long double. Учтите, что под виндовс компилятор от микрософта приравнивает лонг дабл к даблу.
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#3
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
kvak, может имеет смысл сразу загонять это в QString?
|
|
|
kvak |
![]()
Сообщение
#4
|
Студент ![]() Группа: Участник Сообщений: 51 Регистрация: 5.5.2010 Пользователь №: 1690 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Если с помощью setNum перевести в QString передав параметр типа double, то данное число как я понял не помещается в таком виде в double, так как потом в QLineEdit при помощи setText оно записывается в экспоненциальном виде. А long double через setNum не принимается, ошибка пишет компилятор.
А если присвоить из long double в double, то дробная часть сохраняется по идее а уменьшается целая ? Тогда можно перевести в QString отдельно дробную часть и там уже все, что после запятой оставить и добавить к целому. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 8.3.2025, 10:37 |