NAME
_i64toa (NTDLL.@)
SYNOPSIS
char * _i64toa
(
LONGLONG value,
char* str,
int radix
)
PARAMS
value [In] Value to be converted.
str [Out] Destination for the converted value.
radix [In] Number base for conversion.
DESCRIPTION
Converts a large integer to a string.
RETURNS
str.
NOTES
- Converts value to a Nul terminated string which is copied to str.
- The maximum length of the copied str is 65 bytes. If radix is 10 and value is negative, the value is converted with sign.
- Does not check if radix is in the range of 2 to 36.
- If str is NULL it crashes, as the native function does.
DIFFERENCES
- The native dll converts negative values (for base 10) wrong:
-1 is converted to -18446744073709551615
-2 is converted to -18446744073709551614
-9223372036854775807 is converted to -9223372036854775809
-9223372036854775808 is converted to -9223372036854775808
The native msvcrt _i64toa function and our ntdll _i64toa function do not have this bug.
IMPLEMENTATION
Declared in "msvcrt/stdlib.h".
Implemented in "dlls/ntdll/string.c".