Re: Output float number with hex format - Mailing list pgsql-general

From Vincenzo Romano
Subject Re: Output float number with hex format
Date
Msg-id 3eff28921001282331k54d536bfr9ca3f0fad3b85f75@mail.gmail.com
Whole thread Raw
In response to Output float number with hex format  (沈雷 <drshenlei@gmail.com>)
Responses Re: Output float number with hex format  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
Re: Output float number with hex format  (沈雷 <drshenlei@gmail.com>)
List pgsql-general
2010/1/29 沈雷 <drshenlei@gmail.com>:
> Hi!
>
> In C Language, there is a way to format float numbers into a hex string by
> using "%a" in printf.
> eg:
> the value: 1.2345 can be expressed as '0x1.3c083126e978dp+0' which is the
> hex representation of a float number.
>
> I have tried this in Postgres:
> SELECT '0x1.3c083126e978dp+0'::float;
>  float8
> --------
>  1.2345
> (1 row)
> This means that Postgres can accepty hex float as *input*. However I cannot
> find any format function for *output*.
> to_char(..., ...) does not have "%a"-like format. Is there any way to do
> that?
>
> Thank you in advance.
>
> --
> ShenLei

Well, your question sould be about a scanf, not printf, as this is
input, not output.
While being an "interesting" feature, I don't see and use for it.
And, in my opinion, this is not the first and only feature that works
and is not documented.
So, please, don't rely on it until it gets documented.

pgsql-general by date:

Previous
From: Pierre Chevalier
Date:
Subject: Re: dynamic crosstab
Next
From: Pavel Stehule
Date:
Subject: Re: dynamic crosstab