Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.73
LedZeppelin
7 / 7 / 1
Регистрация: 19.04.2011
Сообщений: 68
#1

Разбить строку в массив через разделитель - C++

09.05.2011, 00:29. Просмотров 3779. Ответов 3
Метки нет (Все метки)

Здравствуйте уважаемые форумчане. Мне как новичку интересно как выполнить следующее. Необходимо разбить содержимое строки через разделитель, которым будет к примеру запятая в отдельный индекс массива (на пример names).
Вот исходная строка:
C++
1
char stroka[]="masha, fedya, stepan , maksim";
Результат должен быть таким:
C++
1
2
3
4
cout<<names[0];//выводит masha
cout<<names[1];//выводит fedya
cout<<names[2];//выводит stepan
cout<<names[3];//выводит maksim
Да и есче. Если после запятых будут пробелы, как в моем примере, то в полученном массиве их недолжно быть.(без пробелов с обеих сторон)
Спасибо.
http://www.cyberforum.ru/cpp-beginners/thread2082877.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.05.2011, 00:29
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Разбить строку в массив через разделитель (C++):

Разбить строку на массив слов
Как разбить массив символов в отдельный массив по слову?Я вот что-то...

Как разбить строку на массив слов?
Надо разбить строку на массив строк при помощи разделителя... Какой функцией...

Разбить строку(с числами) и записать в массив
Здраствуйте! У меня есть стринг line например &quot;0.1 0.2 0.3 0.4&quot; И мне нужно...

Разбить строку на массив слов используя strtok()
Мне нужно разделить строку на массив слов используя функцию strtok(), но...

Разбить строку на литералы и записать их в двумерный массив
Правильно выводит только первый литерал. Все остальные - пустые строки,похоже,...

3
sandye51
программист С++
833 / 592 / 147
Регистрация: 19.12.2010
Сообщений: 2,016
09.05.2011, 00:34 #2
кури
C
1
strtok
1
LIS355
2 / 2 / 1
Регистрация: 07.01.2011
Сообщений: 4
09.05.2011, 00:36 #3
проходишься линейно по строке
как встетил разделитель
копируешь в names[k] часть строки от pos до i-1 где
pos это позиция предыдущей запятой, с начала работы функции равна 0
инкрементируешь k++ это номер в свободной строке names и ставишь pos=i

ну или системные функции, если самодеятельности не хочешь
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
09.05.2011, 00:37 #4
Кури sstream и string.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.05.2011, 00:37
Привет! Вот еще темы с решениями:

Строку AnsiString разбить по словам и засунуть в массив
Есть строка: AnsiString s= &quot;Дед%Мазай%Любил%Больших%Девочек&quot;; как её...

Подскажите как разбить строку на массив слов разделителем
нужно разбить строку на массив строк для дальнейшей обработки, подскажите...

Разбить введенную строку на отдельные слова, выделив под каждое свой массив
Тема: многомерные динамические массивы 1. Разбить введенную строку на...

Разбить введенную строку на слова и выделить под каждое слово отдельный массив
Ребята помогите плиз! Задали задание, а сделать не могу( 1) Написать ф-ию,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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