Този сайт работи по-добре с JavaScript.
Начало
Каталог
Помощ
Регистрация
Вход
SisMaker
/
jiffy
Наблюдаван
1
Харесван
0
Разклонения
0
Код
Задачи
0
Заявки за сливане
0
Projects
0
Версии
62
Уики
Activity
Преглед на файлове
issue
#31
: encode floating point numbers with less precision if possible. fails a few etap tests, though I believe it's due to the specific values expected
pull/32/head
Ryan Flynn
преди 12 години
родител
3b6a1327d4
ревизия
b045a37391
променени са
1 файла
, в които са
добавени 7
реда и са
изтрити 1
реда
Разделен изглед
Diff Options
Показване на статистика
Download Patch File
Download Diff File
+7
-1
c_src/encoder.c
+ 7
- 1
c_src/encoder.c
Целия файл
@ -4,6 +4,7 @@
#
include
<assert.h>
#
include
<stdio.h>
#
include
<string.h>
#
include
<float.h>
#
include
"erl_nif.h"
#
include
"jiffy.h"
@ -401,7 +402,12 @@ enc_double(Encoder* e, double val)
start
=
&
(
e
-
>
p
[
e
-
>
i
]
)
;
sprintf
(
start
,
"
%0.20g
"
,
val
)
;
/
/
try
to
encode
doubles
using
the
fewest
digits
possible
.
.
.
if
(
snprintf
(
start
,
32
,
"
%.*g
"
,
DBL_DIG
,
val
)
>
FLT_DIG
)
{
/
/
.
.
.
fall
back
to
full
expansion
to
be
safe
snprintf
(
start
,
32
,
"
%.*g
"
,
LDBL_DIG
,
val
)
;
}
len
=
strlen
(
start
)
;
/
/
Check
if
we
have
a
decimal
point
Пиши
Преглед
Зареждане…
Отказ
Запис