Add SDK/CRT string routines and headers
This commit is contained in:
53
SDK/CRT/STRING/wmem.c
Normal file
53
SDK/CRT/STRING/wmem.c
Normal file
@@ -0,0 +1,53 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2024, Quinn Stephens.
|
||||
Provided under the BSD 3-Clause license.
|
||||
|
||||
Module Name:
|
||||
|
||||
wmem.c
|
||||
|
||||
Abstract:
|
||||
|
||||
Provides wide memory manipulation routines.
|
||||
|
||||
--*/
|
||||
|
||||
#include <wchar.h>
|
||||
|
||||
wchar_t *
|
||||
wmemset (
|
||||
wchar_t *dest,
|
||||
wchar_t c,
|
||||
size_t count
|
||||
)
|
||||
|
||||
{
|
||||
void *ptr = dest;
|
||||
|
||||
while (count--) {
|
||||
*(wchar_t *)dest = c;
|
||||
dest = (wchar_t *)dest + 1;
|
||||
}
|
||||
|
||||
return ptr;
|
||||
}
|
||||
|
||||
wchar_t *
|
||||
wmemcpy (
|
||||
wchar_t *dest,
|
||||
const wchar_t *src,
|
||||
size_t count
|
||||
)
|
||||
|
||||
{
|
||||
void *ptr = dest;
|
||||
|
||||
while (count--) {
|
||||
*(wchar_t *)dest = *(wchar_t *)src;
|
||||
dest = (wchar_t *)dest + 1;
|
||||
src = (wchar_t *)src + 1;
|
||||
}
|
||||
|
||||
return ptr;
|
||||
}
|
Reference in New Issue
Block a user