1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 06:37:35 +00:00

LibC: Add wcstol() and wcstoll() stubs

This commit is contained in:
Linus Groh 2021-01-18 09:59:44 +01:00 committed by Andreas Kling
parent ec42f864d4
commit 3c68f557a9
2 changed files with 23 additions and 8 deletions

View file

@ -25,6 +25,7 @@
*/
#include <AK/Assertions.h>
#include <AK/Format.h>
#include <wchar.h>
extern "C" {
@ -106,6 +107,16 @@ wchar_t* wcscat(wchar_t* dest, const wchar_t* src)
return dest;
}
wchar_t* wcsncat(wchar_t* dest, const wchar_t* src, size_t n)
{
size_t dest_length = wcslen(dest);
size_t i;
for (i = 0; i < n && src[i] != '\0'; i++)
dest[dest_length + i] = src[i];
dest[dest_length + i] = '\0';
return dest;
}
wchar_t* wcstok(wchar_t* str, const wchar_t* delim, wchar_t** ptr)
{
wchar_t* used_str = str;
@ -151,13 +162,15 @@ wchar_t* wcstok(wchar_t* str, const wchar_t* delim, wchar_t** ptr)
return &used_str[token_start];
}
wchar_t* wcsncat(wchar_t* dest, const wchar_t* src, size_t n)
long wcstol(const wchar_t*, wchar_t**, int)
{
size_t dest_length = wcslen(dest);
size_t i;
for (i = 0; i < n && src[i] != '\0'; i++)
dest[dest_length + i] = src[i];
dest[dest_length + i] = '\0';
return dest;
dbgln("FIXME: Implement wcstol()");
TODO();
}
long long wcstoll(const wchar_t*, wchar_t**, int)
{
dbgln("FIXME: Implement wcstoll()");
TODO();
}
}

View file

@ -43,7 +43,9 @@ int wcsncmp(const wchar_t*, const wchar_t*, size_t);
wchar_t* wcschr(const wchar_t*, int);
const wchar_t* wcsrchr(const wchar_t*, wchar_t);
wchar_t* wcscat(wchar_t*, const wchar_t*);
wchar_t* wcstok(wchar_t*, const wchar_t*, wchar_t**);
wchar_t* wcsncat(wchar_t*, const wchar_t*, size_t);
wchar_t* wcstok(wchar_t*, const wchar_t*, wchar_t**);
long wcstol(const wchar_t*, wchar_t**, int);
long long wcstoll(const wchar_t*, wchar_t**, int);
__END_DECLS