BizHawk/waterbox/libc/functions/string/memset.c

39 lines
752 B
C

/* memset( void *, int, size_t )
This file is part of the Public Domain C Library (PDCLib).
Permission is granted to use, modify, and / or redistribute at will.
*/
#include <string.h>
#ifndef REGTEST
void * memset( void * s, int c, size_t n )
{
unsigned char * p = (unsigned char *) s;
while ( n-- )
{
*p++ = (unsigned char) c;
}
return s;
}
#endif
#ifdef TEST
#include "_PDCLIB_test.h"
int main( void )
{
char s[] = "xxxxxxxxx";
TESTCASE( memset( s, 'o', 10 ) == s );
TESTCASE( s[9] == 'o' );
TESTCASE( memset( s, '_', 0 ) == s );
TESTCASE( s[0] == 'o' );
TESTCASE( memset( s, '_', 1 ) == s );
TESTCASE( s[0] == '_' );
TESTCASE( s[1] == 'o' );
return TEST_RESULTS;
}
#endif