NAME
u32_fmt, u32_fmtg, u32_0fmt - write an u32 as decimal value into a byte array
u32_xfmt, u32_0xfmt - write an u32 as hexadecimal value into a byte array
u32_ofmt, u32_0ofmt - write an u32 as octal value into a byte array
u32_bfmt, u32_0bfmt - write an u32 as binary value into a byte array
SYNOPSIS
#include <limb/u32.h>
size_t u32_fmt(char *s, u32 u) size_t u32_0fmt(char *s, u32 u, size_t min) size_t u32_fmtg(char *s, u32 u) size_t u32_0fmtg(char *s, u32 u, size_t min) size_t u32_xfmt(char *s, u32 u) size_t u32_0xfmt(char *s, u32 u, size_t min) size_t u32_ofmt(char *s, u32 u) size_t u32_0ofmt(char *s, u32 u, size_t min) size_t u32_bfmt(char *s, u32 u) size_t u32_0bfmt(char *s, u32 u, size_t min)
DESCRIPTION
The u32_fmt
() macro will write into s
the value of u
in decimal.
The u32_0fmt
() macro will write into s
the value of u
in decimal,
prefixing it with leading zeroes if it requires less than min
characters to do
so.
The u32_fmtg
() and u32_0fmtg
() macros are similar, only they will use a
coma (,
) as thousand separator as needed.
The u32_xfmt
() and u32_0xfmt
() macros are similar, only putting the value
of u
in hexadecimal.
The u32_ofmt
() and u32_0ofmt
() macros are similar, only putting the value
of u
in octal.
The u32_bfmt
() and u32_0bfmt
() macros are similar, only putting the value
of u
in binary.
It is possible to use NULL
as s
to only have length computation performed.
Note that those are macros to u64_fmt_generic(3) and u64_0fmt_generic(3).
Constants
Some constants are available if needed, e.g. to allocate a buffer large enough :
U32_FMT
Maximum number of char
needed to hold a decimal string
U32_FMTG
Maximum number of char
needed to hold a thousand-separated decimal string
U32_XFMT
Maximum number of char
needed to hold an hexadecimal string
U32_OFMT
Maximum number of char
needed to hold an octal string
U32_BFMT
Maximum number of char
needed to hold a binary string
Note that all of those include an extra char
for a proper NUL-terminated
string.
RETURN VALUE
All of these return the length of the string written into s
, or required to
do so when s
is NULL