NAME
expand_number
—
format a number from human readable
form
LIBRARY
library “libutil”
SYNOPSIS
#include
<libutil.h>
int
expand_number
(const char *buf,
uint64_t *num);
DESCRIPTION
Theexpand_number
()
function unformats the buf string and stores a unsigned
64-bit quantity at address pointed out by the num
argument.
The
expand_number
()
function is case-insensitive and follows the SI power of two convention.
The prefixes are:
Prefix | Description | Multiplier |
K |
kilo | 1024 |
M |
mega | 1048576 |
G |
giga | 1073741824 |
T |
tera | 1099511627776 |
P |
peta | 1125899906842624 |
E |
exa | 1152921504606846976 |
RETURN VALUES
Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
ERRORS
The expand_number
() function will fail
if:
- [
EINVAL
] - The given string contains no digits.
- [
EINVAL
] - An unrecognized prefix was given.
- [
ERANGE
] - Result doesn't fit into 64 bits.
SEE ALSO
HISTORY
The expand_number
() function first
appeared in FreeBSD 6.3.