0 / 0 / 1
Регистрация: 16.11.2011
Сообщений: 10
|
||||||
1 | ||||||
Непонятные данные на выходе03.10.2013, 21:17. Показов 671. Ответов 6
Метки нет (Все метки)
Привет. Постигаю C++, сейчас изучаю классы. Написал программу реализующую банальный стек. Прога работает, но кроме нужных данных на экране появляются лишние. Вот что появляется в консоли:
-842150451 2 1 -33686019 133 1 400 Вот собственно код программы. Кликните здесь для просмотра всего текста
Заранее спасибо.
0
|
03.10.2013, 21:17 | |
Ответы с готовыми решениями:
6
На выходе выдаются непонятные символы Нужно заполнить и вывести массив (на выходе получается непонятные числа) Массив структур. Непонятные символы на выходе Serial port выдаёт непонятные данные |
147 / 82 / 10
Регистрация: 04.09.2013
Сообщений: 261
|
|
03.10.2013, 21:37 | 3 |
Я не особо уверен в правильности инкремент и декремента указателя.
Вообще прямые арифметические действия с указателями не есть гуд. Т.к. вы выделяете под известный тип данных осуществляйте его индексацию как массива. Или уж если осуществляете арифметические операции я бы все же указывал точное число прибавления к адресу и не надеялся что операции инкремента и декремента прибавят или убавят соответствующую величину Добавлено через 5 минут И сдается мне вы попутали использовании поля end. У вас в алгоритме он используется как указатель на верхушку стека, но в то же время во всех проверках вы используете ее как индекс. Я вообще не пойму как программа работает. Точнее я понимаю почему результаты непонятные в работе программы
0
|
0 / 0 / 1
Регистрация: 16.11.2011
Сообщений: 10
|
|
03.10.2013, 21:42 [ТС] | 4 |
да, мне тоже кажется, что все дело в end дело в том, что в начале у меня end был просто переменной, не указателем. Потому я решил попробовать с использованием его в качестве указателя, но теперь получается вот такая фигня, а бэкапа у меня нет.
0
|
147 / 82 / 10
Регистрация: 04.09.2013
Сообщений: 261
|
||||||
03.10.2013, 21:53 | 5 | |||||
Рассмотрим на примере.
По ходу выполнения программы. Это приводит к выполнению следующего кода Тут у нас получается выделяется память под 100 записей. Размер стека равен 100 и масс и ент указывают на верхушку стека. Далее идет код Это соответственно ведет нас к следующему коду. И с первых строк начинается
0
|
0 / 0 / 1
Регистрация: 16.11.2011
Сообщений: 10
|
|
03.10.2013, 21:54 [ТС] | 6 |
вы имеете в виду, что использую realloc?
Добавлено через 1 минуту Ладно, спасибо)) Завтра попробую переделать и отпишусь)
0
|
147 / 82 / 10
Регистрация: 04.09.2013
Сообщений: 261
|
|
03.10.2013, 22:02 | 7 |
чем вам не нравился end как индекс для адресации вершины стека?
Пусть бы как был им так и остался. И получать значения стека как элементы массива уж точно не вызовет проблем с адресацией Добавлено через 1 минуту Я привел разбор для того, чтобы стало наглядно видно какая неразбериха получилась из за смешанной работой переменной end как указателя и индекса. Тут просто надо определиться чем она будет - указателем или индексом и только в таком виде ее и использовать Добавлено через 4 минуты кстати о realloc. Почитал описание чтобы не вспоминать а быть уверенным.
0
|
03.10.2013, 22:02 | |
03.10.2013, 22:02 | |
Помогаю со студенческими работами здесь
7
Работа с сокетами, получаю непонятные данные Восстановить данные с флешки непонятные кракозябрины Не сохраняются внесенные данные при выходе из формы Датчик температуры DS18B20: на выходе неверные данные Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации
В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
|
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира
В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
|
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин
История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
|
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией
В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
|
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации
В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
|
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий
В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
|
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO
/ / https:/ / leetcode. com/ studyplan/ top-interview-150/
package topInterview
. . .
|
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
|
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
|
КуМир: решение геометрических задач
bytestream 28.01.2025
Программирование геометрических задач в среде КуМир становится всё более актуальным в обучении школьников и студентов. КуМир — это разработанная в России обучающая программная среда, предназначенная. . .
|
КуМир, исполнитель Водолей: Задачи и решения
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
|
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения основам программирования и алгоритмизации.
Исполнитель Чертежник работает на координатной плоскости, где может. . .
|