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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.73
LedZeppelin
 Аватар для LedZeppelin
7 / 7 / 0
Регистрация: 19.04.2011
Сообщений: 68
09.05.2011, 00:29     Разбить строку в массив через разделитель #1
Здравствуйте уважаемые форумчане. Мне как новичку интересно как выполнить следующее. Необходимо разбить содержимое строки через разделитель, которым будет к примеру запятая в отдельный индекс массива (на пример 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
Да и есче. Если после запятых будут пробелы, как в моем примере, то в полученном массиве их недолжно быть.(без пробелов с обеих сторон)
Спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
09.05.2011, 00:34     Разбить строку в массив через разделитель #2
кури
C
1
strtok
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

ну или системные функции, если самодеятельности не хочешь
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
09.05.2011, 00:37     Разбить строку в массив через разделитель #4
Кури sstream и string.
Yandex
Объявления
09.05.2011, 00:37     Разбить строку в массив через разделитель
Ответ Создать тему
Опции темы

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