gbdk-releases/gbdk-lib/libc/string.c

46 lines
690 B
C
Raw Permalink Normal View History

2015-01-10 16:25:06 +01:00
/** Dumb strings hack.
*/
#include <gbdk-lib.h>
#include <string.h>
#if USE_C_STRCPY
2015-01-10 16:25:08 +01:00
char *strcpy(char *dest, const char *source) NONBANKED
2015-01-10 16:25:06 +01:00
{
char *d = dest;
const char *s = source;
while (*d = *s)
d++, s++;
return dest;
}
#endif
#if USE_C_MEMCPY
2015-01-10 16:25:08 +01:00
void *memcpy(void *dest, const void *source, size_t count) NONBANKED
2015-01-10 16:25:06 +01:00
{
char *d = dest;
const char *s = source;
while (count--) {
*d = *s;
d++;
s++;
}
return dest;
}
#endif
#if USE_C_STRCMP
2015-01-10 16:25:08 +01:00
int strcmp(const char *s1, const char *s2) NONBANKED
2015-01-10 16:25:06 +01:00
{
char ret = 0;
while (!(ret = *s1 - *s2) && *s2)
++s1, ++s2;
if (ret < 0)
return -1;
else if (ret > 0)
return 1;
return 0;
}
#endif