mirror of
https://github.com/SerenityOS/serenity
synced 2024-10-07 00:19:27 +00:00
Add memcpy() and strcmp() to LibC.
This commit is contained in:
parent
0af9254812
commit
ac738b03d6
|
@ -12,6 +12,23 @@ size_t strlen(const char* str)
|
|||
return len;
|
||||
}
|
||||
|
||||
int strcmp(const char* s1, const char* s2)
|
||||
{
|
||||
for (; *s1 == *s2; ++s1, ++s2) {
|
||||
if (*s1 == 0)
|
||||
return 0;
|
||||
}
|
||||
return *(const unsigned char*)s1 < *(const unsigned char*)s2 ? -1 : 1;
|
||||
}
|
||||
|
||||
void memcpy(void* dest, const void* src, size_t n)
|
||||
{
|
||||
auto* bdest = (unsigned char*)dest;
|
||||
auto* bsrc = (const unsigned char*)src;
|
||||
for (; n; --n)
|
||||
*(bdest++) = *(bsrc++);
|
||||
}
|
||||
|
||||
const char* strerror(int errnum)
|
||||
{
|
||||
switch (errnum) {
|
||||
|
|
|
@ -5,6 +5,8 @@
|
|||
extern "C" {
|
||||
|
||||
size_t strlen(const char*);
|
||||
int strcmp(const char*, const char*);
|
||||
void memcpy(void*, const void*, size_t);
|
||||
const char* strerror(int errnum);
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue