Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Перевод из wchar_t* в int (double) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Публичное и приватное наследование классов http://www.cyberforum.ru/cpp-beginners/thread1506719.html
Скажите, а какой из способов лучше использовать: class A{ public: void show() const{ cout << "Class A" << endl; } }; class B : public(private) A{ };
C++ Передать поле класса в функцию Здравствуйте форумчане. Как передать поле класса в функцию с возможностью изменения значения этого поля? Ссылка на компиляцию: http://ideone.com/qlBirp Два класса для теста: class Genre {... http://www.cyberforum.ru/cpp-beginners/thread1506683.html
C++ Задача нахождения кратчайшего пути
Никак не могу понять почему в таких типах задач у меня ошибка. Помогите найти ошибку, и если сможете объясните её. Условие Робот-кладоискатель перемещается по квадратному клетчатому полю, размером...
Собеседования по С++ для джуна C++
Добрый день, если вы бы проводили собеседования по С++ для джуна - какой вопрос по С++ вы бы припасли как самый сложный? Для меня пока, что самый сложный вопрос (который расскрыл бы многие...
C++ Необязательные временные объекты http://www.cyberforum.ru/cpp-beginners/thread1506633.html
Помогите с задачкой: Класс Car содержит модель автомобиля. Функция Find определяет, присутствует ли указанная модель в списке автомобилей. class Car { string model_; public: Car(string mod)...
C++ Уведомления между потоками Здравствуйте! Набросал код для экспериментов: #include "stdafx.h" int блок_1(HWND *hWnd, MyStruct* strukt_1); int сервис_1(HWND *hWnd, MyStruct* strukt_1); void блок(HWND *hWnd, MyStruct*... подробнее

Показать сообщение отдельно
klynxe
10 / 10 / 4
Регистрация: 07.09.2012
Сообщений: 542

Перевод из wchar_t* в int (double) - C++

29.07.2015, 15:52. Просмотров 278. Ответов 1
Метки (Все метки)

Как перевести из wchar_t* в int (double) без учета впереди стоящих нулей?
то есть у меня есть строка типа 050609, где 05 часов 06 минут и 09 секунд
делаю так
C++
1
2
3
4
5
6
7
8
wchar_t token[100] = L"050609";
wchar_t buff[10] = L"";
wcsncpy(buff, token, 2);
int hTime = _wtoi(buff);
wcsncpy(buff, token+2, 2);
int mTime = _wtoi(buff);
wcsncpy(buff, token + 4, 2);
int sTime = _wtoi(buff);
и как понимаю, у меня идет преобразование из восьмеричной системы? то есть с числами до 10 сработает, а если будет строка 0571, то я не получу число 571? как это исправить?

И еще попутный вопрос, надо ли проводить очистку buff перед каждым использованием или при использовании wcsncpy содержимое buff заменяется и последний символ запишется \0?
при использовании примерно следующего кода что я получу?
C++
1
2
3
4
wchar_t token[100] = L"050609";
wchar_t buff[10] = L"";
wcsncpy(buff, token, 4);
wcsncpy(buff, token, 2);
buff =="05" или buff =="0506"?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru