Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.07.2011, 16:33   #1
metoflex
Пользователь
 
Регистрация: 21.06.2009
Сообщений: 37
По умолчанию CString to int (не совсем то, про что Вы подумали)

Имеется 16-ти ричное число, вида:

Код:
CString digits;
digits = "0xffff";
т.е. обычный unsigned short.

вопрос в том, как мне перевести digits ---(from CString)---> int ?

Спасибо!
metoflex вне форума Ответить с цитированием
Старый 20.07.2011, 21:26   #2
Сыроежка
Форумчанин
 
Регистрация: 01.07.2011
Сообщений: 423
По умолчанию

Цитата:
Сообщение от metoflex Посмотреть сообщение
Имеется 16-ти ричное число, вида:

Код:
CString digits;
digits = "0xffff";
т.е. обычный unsigned short.

вопрос в том, как мне перевести digits ---(from CString)---> int ?

Спасибо!
Есть такая функция, как atoi. Подаете ей на вход символьный массив, извлеченный из объекта вашего класса и получаете то, что нужно.
Со мной можно встретиться на www.clipper.borda.ru
Сыроежка вне форума Ответить с цитированием
Старый 20.07.2011, 22:04   #3
metoflex
Пользователь
 
Регистрация: 21.06.2009
Сообщений: 37
По умолчанию

Цитата:
Сообщение от Сыроежка Посмотреть сообщение
Есть такая функция, как atoi. Подаете ей на вход символьный массив, извлеченный из объекта вашего класса и получаете то, что нужно.
Я все ф-ии из этого разряда перепробывал, все возвращают нуль.
metoflex вне форума Ответить с цитированием
Старый 20.07.2011, 23:19   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2Сыроежка
Цитата:
The atoi() function converts the initial portion of the string pointed to by nptr to int. The behavior is the same as strtol(nptr, (char **) NULL, 10);
2metoflex
Код:
const char *s = "0xff";
printf("%ld\n", strtol(s, (char **) NULL, 16));
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 20.07.2011, 23:32   #5
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

еще есть sscanf

Код:
int x;
sscanf(digits.GetBuffer(),"%x",&x);
counter вне форума Ответить с цитированием
Старый 21.07.2011, 09:23   #6
metoflex
Пользователь
 
Регистрация: 21.06.2009
Сообщений: 37
По умолчанию

Цитата:
Сообщение от counter Посмотреть сообщение
еще есть sscanf

Код:
int x;
sscanf(digits.GetBuffer(),"%x",&x);
error C2664: 'sscanf' : cannot convert parameter 1 from 'wchar_t *' to 'const char *'

вот что пишет...
metoflex вне форума Ответить с цитированием
Старый 21.07.2011, 11:09   #7
metoflex
Пользователь
 
Регистрация: 21.06.2009
Сообщений: 37
По умолчанию

Извиняюсь за грубое слово, но затрахался я два дня заниматься этой ***** мутотенью..

Вот как реализовал (я работал в режиме UNICODE)

Код:
char 16bits[7];
char mass[1][1];
CString str;
unsigned short y;

str=_T("0xffff");

for(int i=0; i<6; i++)
wctomb(npath[i], str.GetBuffer()[i]);

sscanf(npath[0], "%x", &y);
(y=65535, т.е. тоже самое, что и встроке, только лежит в int и записано 1-ричной системе).
metoflex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Совсем простенькая программка, про проценты ilushka2306 Помощь студентам 4 02.04.2011 17:30
Перевод из int в CString MoroZzz45 Общие вопросы C/C++ 3 08.06.2010 22:16
Не совсем понимаю, что нужно найти в задании. greenypeace Помощь студентам 2 08.06.2009 13:50