Мой вопрос прост, как напечатать длинный длинный двойной выход ?. Я знаю, как напечатать длинный двойной т.е.Не удается напечатать длинный двойной двойной выход
printf("%Lf",output);
Мой вопрос прост, как напечатать длинный длинный двойной выход ?. Я знаю, как напечатать длинный двойной т.е.Не удается напечатать длинный двойной двойной выход
printf("%Lf",output);
Что именно вы подразумеваете под long long double
? Действительно ли ваш компилятор принимает этот синтаксис? Кажется, что в старых версиях gcc
была ошибка, которая использовалась для анализа этого long long double
и распознала его как long long int
. Эта ошибка была исправлена давно: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=6634
Как вы знаете, C Стандарт поддерживает целые длинные длинные типы:
long long int
могут быть напечатаны с форматом %lld
или %lli
,unsigned long long int
с формат %llu
, %llo
или %llx
,И типа долго с плавающей точкой:
long double
печататься с %Lf
, %Lg
или %Le
.Другие типы могут существовать в некоторых реализациях для конкретных целей, но Нестандартные:
__float128
или binary128
, также известный как четверной точности, документированных здесь: https://en.wikipedia.org/wiki/Quadruple-precision_floating-point_format
__float256
или binary256
, также известный как точность в восьмеричном порядке, задокументирован здесь: https://en.wikipedia.org/wiki/Octuple-precision_floating-point_format
Ни один из них реализуются как long long double
на общих компиляторов ...
Эти форматы широко поддерживается, мягко говоря, и нет стандартного printf
преобразования не определен. Посмотрите на свою документацию компилятора для возможного расширения или определенной функции для преобразования этих расширенных форматов с плавающей точкой с высокой точностью, если они вообще доступны для вашей цели.
Есть long long
, long long int
и long double
(зависит от компилятора).
нетlong long double
. Никогда не.
'длинный длинный неподписанный'. ;-) – DevSolar
IEEE 754 четко определен [binary256] (https://en.wikipedia.org/wiki/Octuple-precision_floating-point_format) более 8 лет. Если C примет его, называя его «длинным длинным двойным», вполне разумно. AFAIK, @david watson может иметь тривиальную ошибку или работает над передовыми компиляторами. Это ответы «Никогда». является преувеличением. – chux
Как бы вы заявили ** «длинный длинный» двойной? Ты это пробовал? AFAIK, такого типа нет ... – DevSolar
Какой компилятор вы используете? Я не знаю, что поддерживает «длинный длинный двойной». – dbush
Я использую gcc-компилятор –