File: pr_strtod.rst

package info (click to toggle)
firefox 147.0.2-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,683,484 kB
  • sloc: cpp: 7,607,246; javascript: 6,533,185; ansic: 3,775,227; python: 1,415,393; xml: 634,561; asm: 438,951; java: 186,241; sh: 62,752; makefile: 18,079; objc: 13,092; perl: 12,808; yacc: 4,583; cs: 3,846; pascal: 3,448; lex: 1,720; ruby: 1,003; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10; exp: 6
file content (50 lines) | stat: -rw-r--r-- 1,345 bytes parent folder | download | duplicates (17)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
PR_strtod
=========

Converts the prefix of a decimal string to the nearest double-precision
floating point number.


Syntax
------

.. code::

   #include <prdtoa.h>

   PRFloat64 PR_strtod(const char *s00, char **se);


Parameters
~~~~~~~~~~

The function has these parameters:

``s00``
   The input string to be scanned.
``se``
   A pointer that, if not ``NULL``, will be assigned the address of the
   last character scanned in the input string.


Returns
~~~~~~~

The result of the conversion is a ``PRFloat64`` value equivalent to the
input string. If the parameter ``se`` is not ``NULL`` the location it
references is also set.


Description
-----------

:ref:`PR_strtod` converts the prefix of the input decimal string pointed to
by ``s00`` to a nearest double-precision floating point number. Ties are
broken by the IEEE round-even rule. The string is scanned up to the
first unrecognized character. If the value of ``se`` is not
(``char **``) ``NULL``, :ref:`PR_strtod` stores a pointer to the character
terminating the scan in ``*se``. If the answer would overflow, a
properly signed ``HUGE_VAL`` (infinity) is returned. If the answer would
underflow, a properly signed 0 is returned. In both cases,
``PR_GetError()`` returns the error code ``PR_RANGE_ERROR``. If no
number can be formed, ``se`` is set to ``s00``, and 0 is returned.