summaryrefslogtreecommitdiff
path: root/print_raw.c
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>1999-06-16 09:42:45 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>1999-06-16 09:42:45 +0000
commit28b7c8930cb62dd613195102133fb283ad922648 (patch)
treea71dad4b6e65d367778ded32c7ff231f4069f80b /print_raw.c
parent7b1d840f93e9d37aee1d1d954af40e1d867ce6a1 (diff)
downloadmpfr-28b7c8930cb62dd613195102133fb283ad922648.tar.gz
added case of NaN
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@67 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'print_raw.c')
-rw-r--r--print_raw.c25
1 files changed, 14 insertions, 11 deletions
diff --git a/print_raw.c b/print_raw.c
index afc2590d6..2e0fa907e 100644
--- a/print_raw.c
+++ b/print_raw.c
@@ -38,17 +38,20 @@ mpfr_print_raw(mpfr_srcptr x)
{
char *str;
- /* 3 char for sign + 0 + binary point
- + ABSSIZE(x) * BITS_PER_MP_LIMB for mantissa
- + 2 for brackets in mantissa
- + 1 for 'E'
- + 11 for exponent (including sign)
- = 17 + ABSSIZE(x) * BITS_PER_MP_LIMB
- */
- str = (char *) malloc((17 + ABSSIZE(x) * BITS_PER_MP_LIMB)*sizeof(char));
- mpfr_get_str_raw(str, x);
+ if (FLAG_NAN(x)) printf("NaN");
+ else {
+ /* 3 char for sign + 0 + binary point
+ + ABSSIZE(x) * BITS_PER_MP_LIMB for mantissa
+ + 2 for brackets in mantissa
+ + 1 for 'E'
+ + 11 for exponent (including sign)
+ = 17 + ABSSIZE(x) * BITS_PER_MP_LIMB
+ */
+ str = (char *) malloc((17 + ABSSIZE(x) * BITS_PER_MP_LIMB)*sizeof(char));
+ mpfr_get_str_raw(str, x);
- printf("%s", str);
- free(str);
+ printf("%s", str);
+ free(str);
+ }
}