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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 118, средняя оценка - 4.86
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
#1

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

16.03.2009, 15:42. Просмотров 14287. Ответов 11
Метки нет (Все метки)

Решил посвятить этой проблеме отдельную тему.
В попытке написать ответ к этой задаче на С++ запнулся на работе со строками.
Собственно вопрос, как разбить строку на составляющие...
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++
char* stringRes=new char; Почему эта строка работает правильно и не выдает ошибки, хотя переменная length не константа? Почему тут не как...

Работа со строками - C++
Задание "Есть строка, состоящая из слов, разделенных любым количеством пробелов. При введении русского текста, пользователь забыл...

Работа со строками - C++
Люди, если есть у кого время прошу просветить на тему Работу со строками ! Начили изучать, а примеров никаких нет ! И надо решить четыре...

Работа со строками - C++
Доброго времени суток! Пробую создать программу, которая разделяет строку на слова, убирает из них последующие включения первой буквы, и...

Работа со строками в СИ++ - C++
Парни помагите напишите прогу если не втягость заранее благодарю))) Вот условие: Дана строка. Преобразовать ее, удалив каждый символ *...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 15:48 #2
а через
scanf("%d.%d.%d",&d,&m,&y)
работать разве не будет?
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 15:59  [ТС] #3
Будет конечно... но мне нужно чтобы было что то вроде
char date[n]; или string date;
cin<<date;
Vourhey
Почетный модератор
6478 / 2253 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.03.2009, 16:01 #4
после cin>>date юзай sscanf.
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 16:06 #5
Цитата Сообщение от Illustris Посмотреть сообщение
Будет конечно... но мне нужно чтобы было что то вроде
char date[n]; или string date;
ты в задании написал что тебе их надо к типу int приводить, так теперь у меня такой вопрос зачем преобразовывать в строку, чтобы потом из нее обратно в число переводить?
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 16:25  [ТС] #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
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 16:36 #7
мыслительный аппарат от таких идей тока портится, если можно работать с числами то лучше работать с ними, а от твоих "идей" проги гораздо медленней работать начинаютбез обид но это так
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 16:46  [ТС] #8
Вне всяких сомнений что если бы мне надо было реально написать прогу я бы не стал
возится со строками.
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
16.03.2009, 16:51 #9
а вот это радует
Illustris
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 8
16.03.2009, 16:58  [ТС] #10
Нубский вопрос:
Можно ли использовать функцию cin как здесь?
scanf("%d.%d.%d",&d,&m,&y)
Ведь scanf типа устаревшая сишная функция
Vourhey
Почетный модератор
6478 / 2253 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.03.2009, 17:09 #11
http://www.cplusplus.com/reference/i...tor%3E%3E.html
И scanf не устаревшая функция.

Добавлено через 1 минуту 49 секунд
http://www.cplusplus.com/src/MasterString.zip
Ensase
Флудер
191 / 29 / 5
Регистрация: 23.03.2007
Сообщений: 335
16.03.2009, 19:48 #12
да язык С вообще весь старый, как мир...
когда что-то делают (дело) обычно спрашивают как это сделать, а не как это сделать на моем любимом языке.
язык это всего лишь форма, главное - содержание.
а вообще С++ потоки ведут себя довольно непредсказуемо при работе с типами, в отличие от printf/scanf
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2009, 19:48
Привет! Вот еще темы с ответами:

Работа со строками - C++
char *B = new char ; cout &lt;&lt; &quot;Введите текст произвольной длины: &quot; ; cin.getline( B, 50); cout &lt;&lt; &quot;Введенный текст: &quot; &lt;&lt; B; ...

Работа со строками - C++
Вставить после вхождения строки str подстроку str1. Попытался сам сделать, но дальше этого работа не идёт. Нужна помощь. #include...

Работа со строками - C++
Даны строки S1 и S2. Удалить из строки S1 последнюю подстроку, совпадающую с S2. Если совпадающих подстрок нет, то вывести строку S1 без...

Работа со строками - C++
Здравствуйте! Прошу помочь разобраться с программой, она не работает, и я не могу понять почему. #include &lt;iostream&gt; #include...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.03.2009, 19:48
Ответ Создать тему
Опции темы

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