![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 05.12.2011
Сообщений: 40
|
![]()
Здравствуйте, подскажите пожалуйста как разбить строку на массив строк с помощью символа-разделителя.
![]() Обязательно с использованием функций заголовочного файла <string.h>. |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 21
|
![]()
Можно воспользоваться функцией стандартной библиотеки memcpy, например
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 12.02.2007
Сообщений: 360
|
![]()
Ммм... Проблема в чем? Строка это массив символов. Ищешь позицию символа разделителя, все элементы этой строки до разделителя копируем в массив и удаляем. И так до тех пор. пока строка не кончится? Или вам по операторам работы со строками подсказать?
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 05.12.2011
Сообщений: 40
|
![]()
Подскажи как искать позицию символа разделителя?
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 14.12.2011
Сообщений: 17
|
![]()
Мы с Капитаном в одной бригаде :
символ разделитель мы нашли, я не представляю, как в массив помещать по целому куску строки? или как создать n массивов? |
![]() |
![]() |
![]() |
#7 |
Software Developer
Участник клуба
Регистрация: 01.03.2011
Сообщений: 1,098
|
![]()
Ну, как вариант:
Сначала подсчитываете, сколько символов-разделителей есть в исходной строке, тем самым выясняя, какой размерности будет будущий массив; объявляете этот массив и в цикле в него записываете подстроки, отрезая их от исходной строки.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв. Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062 |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 21
|
![]() |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 14.12.2011
Сообщений: 17
|
![]()
Получается вот такой код, но вылетает с чудовищными ошибками
string a,b,c,d,e,f,h; int i,j,n; char w[1]; SetConsoleCP(1251); SetConsoleOutputCP(1251); //другие задачи cout << "Задача №7" << endl; cout << "Введите строку: "; getline (cin,a); cout << "Введите символ-разделитель: "; cin >> w[0]; n=0; for (i=0;i>=a.length()-1;i++) if (a[i]==w[0]) n++; string* mas = new string [n]; for (i=0;i>=a.length()-1;i++) if (a[i]!=w[0]) b=b+a[i]; else { mas[n] = b; b.erase(); n++; } cout << "Вывод построчно получившегося массива: " << endl; for(j=0;j>n-1;j++) cout << mas[j] <<endl; |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 19.08.2009
Сообщений: 2,119
|
![]()
PotatoCaptain
как разбить строку на массив строк с помощью символа-разделителя strtok
А вы почему со мной не соглашаетесь, у вас что, импотенция? (c) ACE Valery
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Изменение символа разделителя | tsar_ | Общие вопросы Delphi | 7 | 31.03.2011 13:32 |
разбить строку | Ceprey | Общие вопросы C/C++ | 10 | 24.12.2009 20:47 |
Разбить строку в delphi | severin | Помощь студентам | 2 | 12.11.2009 12:03 |
C++: разбить строку на подстроки | apromix | Помощь студентам | 2 | 04.10.2009 01:07 |
Разбить строку на 2 части | 7KByte | Общие вопросы C/C++ | 6 | 31.05.2009 16:51 |