1
0
Fork 0
mirror of https://github.com/tailix/libkernaux.git synced 2025-02-17 15:45:32 -05:00

Main: include/kernaux/ntoa.h: Return "char *"

This commit is contained in:
Alex Kotov 2022-05-30 16:37:53 +03:00
parent 60ddd1913f
commit 11df5e4693
Signed by: kotovalexarian
GPG key ID: 553C0EBBEB5D5F08
4 changed files with 28 additions and 18 deletions

View file

@ -5,6 +5,8 @@
* include/kernaux/ntoa.h: Constant "KERNAUX_UTOA_BUFFER_SIZE" renamed to
"KERNAUX_UTOA_MIN_BUFFER_SIZE", "KERNAUX_ITOA_BUFFER_SIZE" to
"KERNAUX_ITOA_MIN_BUFFER_SIZE"
* include/kernaux/ntoa.h: Functions "kernaux_[u|i]toa[10|16]" return the end
of a buffer
2022-05-28 Alex Kotov <kotovalexarian@gmail.com>

View file

@ -31,11 +31,11 @@ extern "C" {
char *kernaux_utoa(uint64_t value, char *buffer, int base, const char *prefix);
char *kernaux_itoa(int64_t value, char *buffer, int base, const char *prefix);
void kernaux_utoa10(uint64_t value, char *buffer);
void kernaux_itoa10(int64_t value, char *buffer);
char *kernaux_utoa10(uint64_t value, char *buffer);
char *kernaux_itoa10(int64_t value, char *buffer);
void kernaux_utoa16(uint64_t value, char *buffer);
void kernaux_itoa16(int64_t value, char *buffer);
char *kernaux_utoa16(uint64_t value, char *buffer);
char *kernaux_itoa16(int64_t value, char *buffer);
#ifdef __cplusplus
}

View file

@ -62,22 +62,22 @@ char *kernaux_itoa(int64_t value, char *buffer, int base, const char *const pref
}
}
void kernaux_utoa10(uint64_t value, char *buffer)
char *kernaux_utoa10(uint64_t value, char *buffer)
{
kernaux_utoa(value, buffer, 'd', NULL);
return kernaux_utoa(value, buffer, 'd', NULL);
}
void kernaux_itoa10(int64_t value, char *buffer)
char *kernaux_itoa10(int64_t value, char *buffer)
{
kernaux_itoa(value, buffer, 'd', NULL);
return kernaux_itoa(value, buffer, 'd', NULL);
}
void kernaux_utoa16(uint64_t value, char *buffer)
char *kernaux_utoa16(uint64_t value, char *buffer)
{
kernaux_utoa(value, buffer, 'x', NULL);
return kernaux_utoa(value, buffer, 'x', NULL);
}
void kernaux_itoa16(int64_t value, char *buffer)
char *kernaux_itoa16(int64_t value, char *buffer)
{
kernaux_itoa(value, buffer, 'x', NULL);
return kernaux_itoa(value, buffer, 'x', NULL);
}

View file

@ -512,8 +512,10 @@ int main()
index < sizeof(utoa10_cases) / sizeof(utoa10_cases[0]);
++index
) {
kernaux_utoa10(utoa10_cases[index].value, buffer);
const char *const end1 =
kernaux_utoa10(utoa10_cases[index].value, buffer);
assert(strcmp(buffer, utoa10_cases[index].result) == 0);
assert(end1 == str_end(buffer));
}
}
@ -527,14 +529,16 @@ int main()
) {
const int64_t value = itoa10_cases[index].value;
kernaux_itoa10(value, buffer);
const char *const end1 = kernaux_itoa10(value, buffer);
assert(strcmp(buffer, itoa10_cases[index].result) == 0);
assert(end1 == str_end(buffer));
if (value <= 0) continue;
kernaux_itoa10(-value, buffer);
const char *const end2 = kernaux_itoa10(-value, buffer);
assert(buffer[0] == '-');
assert(strcmp(&buffer[1], itoa10_cases[index].result) == 0);
assert(end2 == str_end(buffer));
}
}
@ -546,8 +550,10 @@ int main()
index < sizeof(utoa16_cases) / sizeof(utoa16_cases[0]);
++index
) {
kernaux_utoa16(utoa16_cases[index].value, buffer);
const char *const end1 =
kernaux_utoa16(utoa16_cases[index].value, buffer);
assert(strcmp(buffer, utoa16_cases[index].result) == 0);
assert(end1 == str_end(buffer));
}
}
@ -561,14 +567,16 @@ int main()
) {
const int64_t value = itoa16_cases[index].value;
kernaux_itoa16(value, buffer);
const char *const end1 = kernaux_itoa16(value, buffer);
assert(strcmp(buffer, itoa16_cases[index].result) == 0);
assert(end1 == str_end(buffer));
if (value <= 0) continue;
kernaux_itoa16(-value, buffer);
const char *const end2 = kernaux_itoa16(-value, buffer);
assert(buffer[0] == '-');
assert(strcmp(&buffer[1], itoa16_cases[index].result) == 0);
assert(end2 == str_end(buffer));
}
}