Преобразование строки в число

Рейтинг: 1Ответов: 2Опубликовано: 28.01.2011

Имеется строка, представляющая собой 16ричное число CString devAddress="А00761ADEFA6" (полученная из адреса устройства удалением ":" между разрядами).

Как проще всего преобразовать ее в числовое значение? Желательно с помощью стандартной функции.

Ответы

▲ 4Принят
int n;
sscanf(devAddress, "%x", &n);

Следите, чтобы не переполнилось!

Для 64-битных адресов:

long long n;
sscanf(devAddress, "%llx", &n);
▲ 2

strtol - там целое семейство функций. различные числовые базы. базовая функция для ваших нужд. по сути atoi - это обертка над ней.

http://opennet.ru/man.shtml?topic=strtol&category=3&russian=0