NetBSD 6.1.5 - man page for humanize_number (netbsd section 9)
|Linux & Unix Commands - Search Man Pages
HUMANIZE_NUMBER(9) BSD Kernel Developer's Manual HUMANIZE_NUMBER(9)
humanize_number, format_bytes -- human readable numbers
humanize_number(char *buf, size_t len, uint64_t number, const char *suffix, int divisor);
format_bytes(char *buf, size_t len, uint64_t number);
The humanize_number() function formats the unsigned 64-bit quantity given in number into
buf. A space and then suffix is appended to the end. The supplied buf must be at least len
If the formatted number (including suffix) is too long to fit into buf, humanize_number()
divides number by divisor until it will fit. In this case, suffix is prefixed with the
appropriate SI designator. Suitable values of divisor are 1024 or 1000 to remain consistent
with the common meanings of the SI designator prefixes.
The prefixes are:
Prefix Description Multiplier
k kilo 1024
M mega 1048576
G giga 1073741824
T tera 1099511627776
P peta 1125899906842624
E exa 1152921504606846976
The len argument must be at least 4 plus the length of suffix, in order to ensure a useful
result in buf.
The format_bytes() function is a front-end to humanize_number(). It calls the latter with a
suffix of ``B''. Also, if the suffix in the returned buf would not have a prefix, the suf-
fix is removed. This means that a result of ``100000'' occurs, instead of ``100000 B''.
Both functions return the number of characters stored in buf (excluding the terminating NUL)
upon success, or -1 upon failure.
These functions first appeared in NetBSD 1.5.
BSD August 7, 2010 BSD
All times are GMT -4. The time now is 03:54 AM.