0 / 0 / 0
Регистрация: 02.08.2014
Сообщений: 12
|
|
1 | |
Разделить строку типа string на лексемы02.08.2014, 00:51. Показов 13831. Ответов 30
Метки нет (Все метки)
Есть строка string, нужно разбить её на лексемы. У меня не получается использовать strtok с типом string.
0
|
02.08.2014, 00:51 | |
Ответы с готовыми решениями:
30
Как скопировать строку типа std::string в другую строку такого же типа? Разбить строку на лексемы и вывести лексемы в обратном порядке. Перевести строку типа string, в строку типа double Как совместить строку типа String, имеющуюся в коде и функцию, принимающую std::string ? |
0 / 0 / 0
Регистрация: 02.08.2014
Сообщений: 12
|
|
02.08.2014, 00:52 [ТС] | 2 |
Есть строка string, нужно разбить её на лексемы. У меня не получается использовать strtok с типом string. Пожалуйста, делайте пояснения в коде.
0
|
0 / 0 / 0
Регистрация: 02.08.2014
Сообщений: 12
|
|
02.08.2014, 01:14 [ТС] | 4 |
Пусть строка будет такая "12, 13, 15" разделители ',' и ' '. Вывести каждое число в отдельной строке, используя strtok.
0
|
0 / 0 / 0
Регистрация: 02.08.2014
Сообщений: 12
|
|
02.08.2014, 01:21 [ТС] | 6 |
А если не использовать strtok, то как можно разделить тип string на лексемы?
0
|
36 / 36 / 27
Регистрация: 05.11.2013
Сообщений: 149
|
||||||
02.08.2014, 01:28 | 7 | |||||
думаю как то так
0
|
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
|||||||||||
02.08.2014, 01:36 | 8 | ||||||||||
Например так:
0
|
36 / 36 / 27
Регистрация: 05.11.2013
Сообщений: 149
|
||||||
02.08.2014, 01:40 | 9 | |||||
хотя правильнее наверное будет так
0
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
|
02.08.2014, 01:42 | 10 |
Закатай ее в istringstream и считывать через getline. Пример считывания:
Текстовый файл, в котором значения разделены точкой с запятой. Нужен ли regex? На месте in у тебя будет переменная типа istringstream
0
|
36 / 36 / 27
Регистрация: 05.11.2013
Сообщений: 149
|
|
02.08.2014, 02:01 | 12 |
Почему?
0
|
MrCold
|
02.08.2014, 02:03
#13
|
Не по теме: gray_fox, а вернуть локальный vector , это нормально ?
0
|
gray_fox
|
02.08.2014, 02:05
#14
|
Не по теме: MrCold, в смысле? По значению же...
0
|
MrCold
|
02.08.2014, 02:07
#15
|
Не по теме: я не прикапываюсь, а спрашиваю )
0
|
gray_fox
|
02.08.2014, 02:12
#16
|
0
|
MrCold
|
02.08.2014, 02:13
#17
|
Не по теме:
0
|
gray_fox
|
02.08.2014, 02:22
#18
|
Не по теме: MrCold, там кстати в первом ответе более точно написано (относительно современного С++): результат будет перемещён, а не скопирован.
0
|
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
|
02.08.2014, 02:23 | 19 |
Потому что ты открываешь доступ к внутренностям объекта, которые не зря возвращены константными. Ты нарушаешь принцип инкапсуляции и такие действия когда-нибудь приведут к тому, что запорешь объект и выльется это в неприятности.
1
|
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
|
02.08.2014, 02:29 | 20 |
const_cast может просто "снять" const/volatile модификаторы, но он не превратит неизменяемые данные в изменяемые. Менять то, что объявлено const - неопределённое поведение. + инвариант класса может быть нарушен.
1
|
02.08.2014, 02:29 | |
02.08.2014, 02:29 | |
Помогаю со студенческими работами здесь
20
Разделить строку string на подстроки Читать строку типа string из файла, разбить ее на массив слов типа char Как преобразовать число типа int в строку типа string без методов-конвертов на C#? Из элементов массива типа integer в -> строку типа string Как разделить и преобразовать строку из string в int? Разделить символьный массив на лексемы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |