Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
11 / 11 / 0
Регистрация: 04.04.2014
Сообщений: 140
1

Преобразование цифр в строку

05.05.2014, 17:25. Показов 1126. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Пишу небольшую программку, а именно просто идущие часы(такие же что тикают в нижнем правом углу)
Так вот хочу выводить время в поле Edit с помощью функции SetDlgItemText. Вот там вторым параметром указывается массив содержащий строку. Вот как мне в этот массив записать время, которое я получаю с помощью функции
C
1
2
SYSTEMTIME time;
GetSystemTime(&time);
Какой функцией преобразовать время в строку? Буду очень благодарен если примерчик кините!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.05.2014, 17:25
Ответы с готовыми решениями:

Написать функцию, которая формирует строку, состоящую только из цифр, входящих в исходную строку
Нужна помощь задачу нужно написать в консольном режиме Написать и протестировать функцию,...

Преобразовать строку цифр в строку символов ASCII
Представляю вашему вниманию такую задачку Входная строка состоит из цифр, нужно преобразовать...

Преобразование цифр в слова
У меня есть такая задачка. Есть текстовый файл с таким текстом: "Мой телефон -123 - 45 - 67". И...

Преобразование строки в массив цифр
Помогите разобраться с функцией для преобразования строки в массив цифр. void readlong (type &vec)...

10
Заблокирован
05.05.2014, 17:30 2
C++
1
2
3
4
5
SYSTEMTIME time;
GetSystemTime(&time);
std::wstringstream ss;
ss << L"THE TIME: " << time.wHour << ":" << time.wMinute << ":" << time.wSecond;
SetDlgItemText(hDlg, IDC_MY_EDIT, ss.str().c_str());
0
11 / 11 / 0
Регистрация: 04.04.2014
Сообщений: 140
05.05.2014, 17:32  [ТС] 3
Компилятор выдал кучу ошибок

Добавлено через 12 секунд
Работаю в VS 2005
0
Заблокирован
05.05.2014, 17:33 4
если не сработает, то последние строчки поменяй на это:
C++
1
2
std::wstring str = ss.str();
SetDlgItemText(hDlg, IDC_MY_EDIT, str.c_str());
Добавлено через 27 секунд
Цитата Сообщение от takhvatulin Посмотреть сообщение
Работаю в VS 2005
)))))))
какие ошибки то?
Код в студию
0
11 / 11 / 0
Регистрация: 04.04.2014
Сообщений: 140
05.05.2014, 17:37  [ТС] 5
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(245) : error C2039: 'wstring' : is not a member of 'std'
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(245) : error C2065: 'wstring' : undeclared identifier
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(245) : error C2146: syntax error : missing ';' before identifier 'str'
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(245) : error C2065: 'str' : undeclared identifier
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(245) : error C2065: 'ss' : undeclared identifier
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(245) : error C2228: left of '.str' must have class/struct/union
1> type is ''unknown-type''
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(246) : error C2065: 'hDlg' : undeclared identifier
1>d:\visual проекты\clock_tune\clock_tune\clock_tunedlg.cpp(246) : error C2228: left of '.c_str' must have class/struct/union

Добавлено через 2 минуты
C++
1
2
3
4
5
6
7
8
9
afx_msg void Cclock_tuneDlg::OnTimer(UINT id)
{
 
    SYSTEMTIME time;
    GetSystemTime(&time);
    std::wstring str = ss.str();
    SetDlgItemText(IDC_EDIT1, str.c_str());
 
}
вот сам код
0
Заблокирован
05.05.2014, 17:42 6
takhvatulin, это твой код? Ухахахаа Ты вообще не понимаешь, что я тебе написал? Зачем тебе С++ ? ))))))
в самом верху файла напиши:
C++
1
2
#include <string>
#include <sstream>
В своей функции: (Я тебе говорил поменять только последние две строчки)
C++
1
2
3
4
5
6
SYSTEMTIME time;
GetSystemTime(&time);
std::wstringstream ss;
ss << L"THE TIME: " << time.wHour << ":" << time.wMinute << ":" << time.wSecond;
std::wstring str = ss.str();
SetDlgItemText(IDC_STATIC_TEXT, str.c_str());
0
11 / 11 / 0
Регистрация: 04.04.2014
Сообщений: 140
05.05.2014, 17:59  [ТС] 7
Цитата Сообщение от newbie666 Посмотреть сообщение
Зачем тебе С++ ? ))
Устроился стажером на работу. В компании это работают в VS 2005 пишут на С++.

Щас попробу. снова откомпилировать

Добавлено через 3 минуты
Отлично! Все работает!
А теперь можно пояснения по этим строчкам:
C
1
2
3
std::wstringstream ss;
ss << L"THE TIME: " << time.wHour << ":" << time.wMinute << ":" << time.wSecond;
std::wstring str = ss.str();
0
Заблокирован
05.05.2014, 18:04 8
Цитата Сообщение от takhvatulin Посмотреть сообщение
Устроился стажером на работу
а.. ну тогда - похвально, я думал ты - очередной халявщик...
Давай весь проект в архиве - поправлю, тебе повезло, у меня на компе установлены все версии студий, начиная с 2005-й

Добавлено через 4 минуты
Цитата Сообщение от takhvatulin Посмотреть сообщение
А теперь можно пояснения по этим строчкам:
можно
std::wstringstream ss; - это объект строкового потока (вайд чарового - тоесть юникодового) (ну ты строчку создаёшь так: std::string str, а это - файловый поток)
ss << L"THE TIME: " << time.wHour << ":" << time.wMinute << ":" << time.wSecond; (это - формирование строки)
то есть ты как бы в поток загоняешь что угодно этим символом <<. Тоесть ss << 1 << 2 << 3; - на выходе будет 123
std::wstring str = ss.str(); - ну это я на всякий случай создал переменную, в которую сохранил строку результирующую из файлового потока (ss.str() ), в принципе наверное этого делать и не надо, можешь попробовать как в моём первом посте:
C++
1
2
3
4
5
SYSTEMTIME time;
GetSystemTime(&time);
std::wstringstream ss;
ss << L"THE TIME: " << time.wHour << ":" << time.wMinute << ":" << time.wSecond;
SetDlgItemText(IDC_STATIC_TEXT, ss.str().c_str());
0
11 / 11 / 0
Регистрация: 04.04.2014
Сообщений: 140
05.05.2014, 18:10  [ТС] 9
Цитата Сообщение от newbie666 Посмотреть сообщение
тебе повезло, у меня на компе установлены все версии студий, начиная с 2005-й


Цитата Сообщение от newbie666 Посмотреть сообщение
Давай весь проект в архиве - поправлю
Пока проекта как такового нет, я сижу его потихоньку пытаюсь делать. Вообще в конечном итоге у меня должна получится программка содержащая двое(или более) независимых друг от друга часов с настройкой(часы,минуты). Часы должны показывать с точностью до миллисекунд(это я понял как сделать)

За пояснение спасибо! Еще такой вопрос, могу ли я к вам как нибудь лично обращаться с вопросами?
0
Заблокирован
05.05.2014, 18:14 10
Цитата Сообщение от takhvatulin Посмотреть сообщение
За пояснение спасибо! Еще такой вопрос, могу ли я к вам как нибудь лично обращаться с вопросами?
да - обращайся, помогу. Я просто халявщиков не люблю, которых тут 99% (студенты тупорылые - которым надо за них лабораторную сделать), а так то - если ты уже на работу пошёл - спрашивай
0
11 / 11 / 0
Регистрация: 04.04.2014
Сообщений: 140
05.05.2014, 18:19  [ТС] 11
Цитата Сообщение от newbie666 Посмотреть сообщение
да - обращайся, помогу.
Спасибо огромное!))
0
05.05.2014, 18:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2014, 18:19
Помогаю со студенческими работами здесь

Преобразование цифр в соответствующее строковое представление
Задача: Создайте вектор, хранящий десять строковых значений &quot; zero &quot; , &quot; one &quot; , &quot; . , &quot;nine &quot; ....

Преобразование числа в строку
Как преобразовать строку char *s, в которой записано число(возможно со знаком минус), в формат типа...

Преобразование числа в строку
Подскажите как преобразовать число в строку, пожалуйста!

Преобразование из double в строку
Здравствуйте, в общем такое дело, есть winapi приложение с подключаемой .dll, при подсчёте функция...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru