WCharToCharSafe
#include <Windows.h>
SIZE_T WCharStringToCharString2(PCHAR Destination, PWCHAR Source, SIZE_T MaximumAllowed)
{
SIZE_T Index = 0;
for (; Index < MaximumAllowed - 1 && Source[Index]; ++Index)
{
WCHAR IndividualCharacter = Source[Index];
if (IndividualCharacter > 0x7f)
Destination[Index] = '?';
else
Destination[Index] = (CHAR)IndividualCharacter;
}
Destination[Index] = '\0';
return Index;
}
INT main(VOID)
{
WCHAR String1[] = L"I like cats a lot";
CHAR String2[256] = { 0 };
SIZE_T Length = 0;
Length = WCharStringToCharString2(String2, String1, 256);
return ERROR_SUCCESS;
}Last updated