выходной формат фиксированной ширины для чисел (fixed width output format for numbers)
Дубль
(статьи:
pmnumberstr - выходной формат фиксированной ширины для чисел )
Имя (Name)
pmNumberStr, pmNumberStr_r - fixed width output format for
numbers
Синопсис C (C Synopsis)
#include <pcp/pmapi.h>
const char *pmNumberStr(double value);
char *pmNumberStr_r(double value, char *buf, int buflen);
cc ... -lpcp
Описание (Description)
pmNumberStr returns the address of a 8-byte buffer that holds a
null-byte terminated representation of value suitable for output
with fixed width fields. The pmNumberStr_r function does the
same, but stores the result in a user-supplied buffer buf of
length buflen, which should have room for at least 8 bytes.
The value is scaled using multipliers in powers of ``one
thousand'' (the decimal ``kilo'') and has a bias that provides
greater precision for positive numbers as opposed to negative
numbers.
The format depends on the sign and magnitude of value as follows
(d represents a decimal digit):
┌──────────────────────────────────┬─────────┐
│ value range │ format │
├──────────────────────────────────┼─────────┤
│ > 999995000000000 │ inf? │
│999995000000000 - 999995000000 │ ddd.ddT │
│ 999995000000 - 999995000 │ ddd.ddG │
│ 999995000 - 999995 │ ddd.ddM │
│ 999995 - 999.995 │ ddd.ddK │
│ 999.995 - 0.005 │ ddd.dd │
│ 0.005 - -0.005 │ 0.00 │
│ -0.005 - -99.95 │ -dd.dd │
│ -99.995 - -99995 │ -dd.ddK │
│ -99995 - -99995000 │ -dd.ddM │
│ -99995000 - -99995000000 │ -dd.ddG │
│ -99995000000 - -99995000000000 │ -dd.ddT │
│ < -99995000000000 │ -inf? │
└──────────────────────────────────┴─────────┘
At the boundary points of the ranges, the chosen format will
retain the maximum number of significant digits.
Примечание (Note)
pmNumberStr returns a pointer to a static buffer and hence is not
thread-safe. Multi-threaded applications should use
pmNumberStr_r instead.
Смотри также (See also)
printf(3)