C ++: преобразование wstring в unsigned char

0

Я попытался преобразовать wstring в unsigned char. Я пробовал _wtoc, но этого не существует.

Есть ли конверсия в стиле _wto?

Спасибо.

Теги:
casting

2 ответа

0

Ну, я делаю это так:

wstring sThis=L"12";

unsigned int i;
i=_wtoi(sThis.c_str());

unsigned char c=(unsigned char)i;
-1

Я делаю это так

wstring wsWideString
UINT uSize = wsWideString.length();
unsigned char * ptrUChar = new unsigned char[uSize+1];
memset(ptrUChar ,'\0',uSize+1);
for(UINT i=0;i<uSize;i++)
{
ptrUChar [i] = wsWideString[i];
}

//when finished
delete [] ptrUChar ;
ptrUChar  = NULL;
  • 0
    Это чистая магия! Вы назначаете широкий символ на персонажа, что дает вам 50% экономии. Отличная степень сжатия! Серьезно, хотя: худший код, который я видел на этой неделе. Зачем использовать new и memset когда есть std::deque или std::vector ? Зачем использовать какой-то выдуманный тип ( UINT ), когда size_t уже существует? И т. Д. И т. Д.
  • 0
    вау .... спасибо..пост вы тогда свой код.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню