|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.09.2009, 22:02 | #1 |
Пользователь
Регистрация: 13.09.2009
Сообщений: 29
|
Строки
Помогите найти ошибку, в программе где нужно заполнить строки. При заполнении какой то строки словами разделяющимися пробелами, ввод последующий строки весьма странный, но если заполнять строки без пробелов, то всё нормально. Далее следует непонятный вывод этих строк в отдельном цикле.
Код:
Код:
Код:
Последний раз редактировалось Anarki; 18.09.2009 в 22:05. |
18.09.2009, 22:12 | #2 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
Да, собственно, ничего странного, вы ведь объявили десять указателей на строки, но не десять буферов... Более того передаёте в scanf в качестве буфера указатель на этот массив о_О то есть вместо хранения указателей вы используете его для хранения конкретных строк... Короче, надо выделить какую-то память под строки, например вместо
Код:
Код:
|
18.09.2009, 22:18 | #3 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
в дополнение:
scanf считывает строку до первого пробела, используйте gets |
18.09.2009, 23:00 | #4 |
Пользователь
Регистрация: 13.09.2009
Сообщений: 29
|
|
18.09.2009, 23:09 | #5 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
|
18.09.2009, 23:14 | #6 |
Пользователь
Регистрация: 13.09.2009
Сообщений: 29
|
Получается проблемный ввод. Первая строка отбрасывается.
Вы бы не могли изменить мой код как вы считаете правильным ? В си не так опытен, поэтому могу делать мелкие ошибки. |
18.09.2009, 23:25 | #7 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
Чтобы не отбрасывалась, добавьте fflush(stdin);
Код:
|
18.09.2009, 23:34 | #8 |
Пользователь
Регистрация: 13.09.2009
Сообщений: 29
|
netrino спасибо
|
28.11.2009, 03:22 | #9 |
Регистрация: 16.10.2009
Сообщений: 9
|
У меня на подобее этого задача.Не могу просто вьехать как
это сделать.Нужно выделить часть текста между словами,введенный с клавиатуры.Может кто знает каким образом это записать?Я просто не могу вьехать в суть вопроса... |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перенести символа с начала строки в место перед запятой этой же строки. | Zhiltsov | Microsoft Office Excel | 4 | 05.06.2009 13:10 |
Строки. Как вывести часть строки? | Anfall | Общие вопросы Delphi | 7 | 26.02.2009 09:10 |
строки | pakusya | Паскаль, Turbo Pascal, PascalABC.NET | 8 | 01.12.2008 02:42 |
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй | gotex | Помощь студентам | 4 | 08.05.2008 02:27 |
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. | vitalik007 | Помощь студентам | 1 | 25.09.2007 20:45 |