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

Работа со строками C++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 118, средняя оценка - 4.86
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 15:42     Работа со строками C++ #1
Решил посвятить этой проблеме отдельную тему.
В попытке написать ответ к этой задаче на С++ запнулся на работе со строками.
Собственно вопрос, как разбить строку на составляющие...
input: dd.mm.yyyy
мне надо присвоить int переменным значения dd, mm и yyyy

ЗЫ
Google я спрашивал, и перерыл кучу способов, но результата не добился.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2009, 15:42     Работа со строками C++
Посмотрите здесь:

C++ Работа со строками
Работа со строками C++
Работа со строками C++
C++ Работа со строками.
C++ Работа со строками
Работа со строками C++
C++ Работа со строками
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
EnzoMatrix
 Аватар для EnzoMatrix
120 / 120 / 4
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 15:48     Работа со строками C++ #2
а через
scanf("%d.%d.%d",&d,&m,&y)
работать разве не будет?
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 15:59  [ТС]     Работа со строками C++ #3
Будет конечно... но мне нужно чтобы было что то вроде
char date[n]; или string date;
cin<<date;
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.03.2009, 16:01     Работа со строками C++ #4
после cin>>date юзай sscanf.
EnzoMatrix
 Аватар для EnzoMatrix
120 / 120 / 4
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 16:06     Работа со строками C++ #5
Цитата Сообщение от Illustris Посмотреть сообщение
Будет конечно... но мне нужно чтобы было что то вроде
char date[n]; или string date;
ты в задании написал что тебе их надо к типу int приводить, так теперь у меня такой вопрос зачем преобразовывать в строку, чтобы потом из нее обратно в число переводить?
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 16:25  [ТС]     Работа со строками C++ #6
Чисто для практики и тренировки мыслительного аппарата.
Вообщем проблему решил

C++
1
2
3
4
5
6
7
8
9
int stringdev(string dmy,int i)
{
    size_t length;
    char redm[3];
    length=dmy.copy(redm,2,i);
    redm[length]='\0';
    int ddmmyy = atoi(redm);
    return ddmmyy;  
}
EnzoMatrix
 Аватар для EnzoMatrix
120 / 120 / 4
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 16:36     Работа со строками C++ #7
мыслительный аппарат от таких идей тока портится, если можно работать с числами то лучше работать с ними, а от твоих "идей" проги гораздо медленней работать начинаютбез обид но это так
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 16:46  [ТС]     Работа со строками C++ #8
Вне всяких сомнений что если бы мне надо было реально написать прогу я бы не стал
возится со строками.
EnzoMatrix
 Аватар для EnzoMatrix
120 / 120 / 4
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 16:51     Работа со строками C++ #9
а вот это радует
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 16:58  [ТС]     Работа со строками C++ #10
Нубский вопрос:
Можно ли использовать функцию cin как здесь?
scanf("%d.%d.%d",&d,&m,&y)
Ведь scanf типа устаревшая сишная функция
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.03.2009, 17:09     Работа со строками C++ #11
http://www.cplusplus.com/reference/i...tor%3E%3E.html
И scanf не устаревшая функция.

Добавлено через 1 минуту 49 секунд
http://www.cplusplus.com/src/MasterString.zip
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2009, 19:48     Работа со строками C++
Еще ссылки по теме:

C++ Работа со строками
Работа со строками С++ C++
Работа со строками C++ C++
C++ Работа со строками
C++ Работа со строками

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

Или воспользуйтесь поиском по форуму:
Ensase
Флудер
 Аватар для Ensase
191 / 29 / 5
Регистрация: 23.03.2007
Сообщений: 335
16.03.2009, 19:48     Работа со строками C++ #12
да язык С вообще весь старый, как мир...
когда что-то делают (дело) обычно спрашивают как это сделать, а не как это сделать на моем любимом языке.
язык это всего лишь форма, главное - содержание.
а вообще С++ потоки ведут себя довольно непредсказуемо при работе с типами, в отличие от printf/scanf
Yandex
Объявления
16.03.2009, 19:48     Работа со строками C++
Ответ Создать тему
Опции темы

Текущее время: 08:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru