Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
max_sk
84 / 11 / 2
Регистрация: 11.04.2015
Сообщений: 583
1

Разбить строку на отдельные слова по пробелу

12.04.2015, 14:17. Просмотров 373. Ответов 0
Метки нет (Все метки)

Спасибо, разберу на досуге этот вариант...

У меня теперь следующая закавыка. Пишу по памяти, т.к. компа под рукой нет.

Дана строка char *str="this is a nice day". Ее нужно разбить на отдельные слова по пробелу. Проделать это нужно через функцию типа char **split (char *str, char ch), где ch=' ' ,т.е. пробел. Как видите функция должна возвращать поинтер ту поинтер. Но с этим я разобрался. Задал внутри функции поинтер ту поинтер char **rez и присваиваю ему адрес каждого нового слова. Результат на экране нынче такой:

this is a nice day
is a nice day
a nice day
nice day
day

а должен быть

this
is
a
nice
day

то есть у меня не получается отсечь по пробелу слова внутри указателя на указатель rez.

Как это сделать? По возможности без использования библиотечных функций? :-(

Добавлено через 3 минуты
Позже скину код, как только доберусь до компа...

Добавлено через 4 часа 23 минуты
Получилось!!

Оказывается, нужно было динамически выделять память под указатели, причем задавать таких указателей побольше. Оказывается, если я пишу rez=(char **) malloc (sizeof(char *)), то будет создан массив всего лишь из ТРЕХ указателей char *. А у меня пять слов. Поэтому надо создавать с запасом, скажем rez=(char **) malloc (20*sizeof (char *)).

 Комментарий модератора 
5.16 Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема.
правила форума
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2015, 14:17
Ответы с готовыми решениями:

Разбить строку на слова и удалить короткие слова
Разработать программу для подсчета, сколько слов содержится в строке. Слова разделены пробелями или...

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

Не получается разбить строку на слова
Подскажите пожалуйста почему не получается разбить строку на слова? strcat(string," "); for...

Двусвязный список - разбить строку на слова
Здравствуйте, возникла проблема с реализацией двусвязного списка. Вводится строка из строчных...

Разбить строку на слова и записать их в массив
Народ, помогите пожалуйста! Суть задачи в следующем: дан текстовый файл,содержащий в себе строку,...

0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2015, 14:17

Функция strtok, strcmp: разбить строку на слова
Дан набор слов и произвольная текстовая строка. Выбрать из текстовой строки все слова, входящие в...

Разбить строку на слова, найти их частотность, отсортировать по алфавиту
"Дана последовательность, содержащая до 5 слов, в каждом из которых до 5 строчных латинских букв;...

Разбить строку на слова - Нулевая длина строки char*
Добрый день! Пытаюсь в цикле считать из файла, содержащего такую строку "fga b qwee", так, чтобы...


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

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

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