Я пытаюсь подсчитать количество цифр в шестнадцатеричном формате.Например: 0x00000001
должен возвращать счет в виде 8
.
Может ли кто-нибудь подсказать, какой самый эффективный способ сделать это?Я попытался преобразовать его в CString
и получить длину, используя 'GetLength()
', но, похоже, здесь это не работает.
Редактировать: Извините, если я забыл упомянутьМоя переменная, в которой хранится шестнадцатеричное число, является беззнаковым коротким.
Попробовал это:
unsigned short number;
CString HexValue;
HexValue.Format("%.8x",number); // number = 0000000000000000, 16 0's
HexValue = "0x" + HexValue;
int length = HexValue.GetLength() - 2; // returns an 8 here