|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.03.2017, 22:07 | #21 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Сколько раз ты нажал?
Увидев чёрные экран (без информации), ты нажал несколько раз... Один раз нажимаешь - желтая стрелка появляется (желтая стрелка наполняемости кода). 1.jpg так программа ещё не дошла до "вывод на экран". Понимаешь - остановить выполнения программы (в любой её точке) и посмотреть на значения переменных. Это начало ОТЛАТКИ. Отладка - это поиск логических ошибок, при этом (в VisuaL STUDIA) можно останавливать программу в любом месте простая точка останова); есть возможность останавливать по условию (каких-то переменных); выполнять программу по-шагам (анализируя переменные на каждом шаге); просмотр стека вызова функций.... Но тебе из всего этого нужно будет только простая точка останова. p.s.: если точка останова уже не нужна, то её можно удалить: 0.jpg Ну поставь сюда 103.jpg Главное - после формирования всего списка! Последний раз редактировалось ura_111; 30.03.2017 в 23:05. |
30.03.2017, 22:19 | #23 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Хотя нет.
Когда я говорю: "останови программу после формировании списка", то это означает СРАЗУ, ПОСЛЕ ФОРМИРОВАНИИ. Т.к. дальше в коде (в выводе на экран) ты можешь ошибиться и повлиять на переменную "head".... Останавливай программу как в первый раз говорил. |
30.03.2017, 23:14 | #24 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
И ещё одно, у тебя после ввода "...Jenya Sidorov" нужно:
Код:
Правда, я не вижу что там выше по коду, но надо тоже самое: после ввода имени - "h->next = NULL;"). |
30.03.2017, 23:53 | #25 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
А где у тебя:
Код:
|
02.04.2017, 15:25 | #26 |
Пользователь
Регистрация: 30.11.2016
Сообщений: 23
|
Извиняюсь за долгий ответ, вот сделал как ты и просил.
|
02.04.2017, 15:57 | #27 |
Пользователь
Регистрация: 30.11.2016
Сообщений: 23
|
Я так честно говоря пока и не понял, как мне меню со списком связать?
|
02.04.2017, 17:34 | #28 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Что это за информация?
В ней же ничего не понятно... И анализировать тоже не возможно... А раскрыть, а разрисовать. p.s.: нажимай на "белый, левый треугольничек head" (присматривать, на фотке видно). Особо меня интересует "next" в этом "head". Разрисуй (в Paint) всё, чтобы было понятно. ___________________________________ _________________ В смысле, ты не понял меню? Что в меню есть, то и должна делать программа. Например, выберешь п.меню просмотр, и на экране появится таблица из данных списка; а выберешь "создания нового узла" - то и создаться новый узел в списке и попросит заполнить данными с консоли... А сам список хранится в памяти компьютера... Покамисть ты ни один пункт меню не реализовал, поэтому и меню не работает... Последний раз редактировалось ura_111; 02.04.2017 в 18:02. |
02.04.2017, 21:26 | #29 |
Пользователь
Регистрация: 30.11.2016
Сообщений: 23
|
вот
|
03.04.2017, 02:34 | #30 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Уже кое что, можно анализировать.
Правда я думал, что ты мне нарисуешь что-то вроде такого: Вложение 87256 где чёрный квадрат - экземпляр структуры со значениями (у тебя не числа, а текстовые данные), а чёрная стрелка - это эквивалент "твоего перехода между экземплярами". Ну ладно, пусть дальнейшем будет в таком виде (в принципе тоже понятно). Единственное, обрати внимание я дошёл до "NULL" и всё. А то, что у тебя дальше - это неопределённое значение и если попытаться считать информацию с тех красных запретительных знаков - то сама программа аварийно завершиться. Например, у тебя в программе идёт реагирования на "NULL" (хотя бы при передвижении по списку на вывод): 0 (2).jpg видишь, дальше не пойдёт - своеобразная защита... А когда же список пустой, тогда "head=NULL". Переделай свой скрин только до "NULL" и перезалей сюда... ___________________________________ ______________________________ ___________________________________ ______________________________ Видно, что последовательность здоровая, - а значит все условия её формирования выполнены. Приведу примеры когда что-то пошло не то: 3.jpg ошибка ссылки и ошибка данных, - это единственные ошибки в списках. ___________________________________ ______________________________ ___________________________________ ______________________________ Нужны эксперименты (много экспериментов и ответов на вопросы) чтобы можно было переходить к п.меню "Добавить узел" (дело в том, что это самое легкое в твоей задачи). После этого пункта логичней сделать вывод не экран всего списка (чтобы пользователь мог убедиться, что нормально добавляет в список). ___________________________________ ______________________________ ___________________________________ ______________________________ 1) Итак, для начала покажи, что происходит с "head" в динамике: 1.jpg (когда будешь собирать информацию, обращай внимание на "жёлтую стрелку выполнимости программы"). Покажи, что происходит с "head" в каждой точке останова. 2) Второй момент, надо узнать что делает каждая строчка (поставь точки останова на каждой строчке и, нажимая ПРОДОЛЖИТЬ, собери информацию о переменных, участвующих в строчках: до и после каждой строчки): Код:
разве что, может быть, у меня получилось бы быстрей, ну, но а ты зачем? 3) Я попытался ввести данные (простое слово) с консоли, но мне ошибку вывело: 4.jpg я использовал твой метод (если я его, конечно, правильно понял)... Так дело не пойдёт - у тебя целая куча слов которые нужно будет вводить с консоли (фамилия, страна....), а я не могу ввести даже одного слова. Покажи, как ввести слово. Надо разобраться с этим. В интернете поищи как в С++ ввести слово (строку). p.s.: не переживай, это не сложно - в каждой второй программе используются слова, поэтому и найти будет не сложно. Поищи примеры и сделай, чтобы работало... Покажи скрин на фоне кода. ___________________________________ ___________________________ ___________________________________ ____________________________ Пока всё. Последний раз редактировалось ura_111; 03.04.2017 в 02:49. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Структуры данных на С. | art1es23 | Общие вопросы C/C++ | 3 | 05.11.2015 14:42 |
Динамические структуры данных, списковые структуры (надо разобраться что делает программа) | _4Alex4_ | Помощь студентам | 1 | 14.11.2012 07:39 |
Структуры данных | LimPIK49 | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 17.03.2012 00:07 |
Структуры данных | alex-soft | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 17.01.2012 19:10 |
Структуры данных | Shadow94 | Общие вопросы C/C++ | 8 | 22.04.2011 11:50 |