Список строк StrList перебирается с помощью ArrayEnum нормально. Если выбирать строки по индексу с помощью ArrayRW, выполнение программы завершается с кодом исключения c0000005.
Hiasm 4.05 186. Win7x64. Intel3. В чем может быть ошибка.l
Редактировалось 1 раз(а), последний 2019-08-16 19:04:29
Этот топик читают: Гость
Этот топик был перемещен из раздела "Помощь по среде"
Ответов: 44
Рейтинг: 0
|
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Igor08 писал(а): выполнение программы завершается с кодом исключения c0000005. |
|||
карма: 25 |
|
Ответов: 44
Рейтинг: 0
|
|||
|
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Это кольцевание.
Смотри, например, сюда: https://forum.hiasm.com/post/293674 --- Добавлено в 2019-08-17 13:04:42 Блин, где Леонид, самый главный учитель по "вставлению схемы на форум"............. Редактировалось 3 раз(а), последний 2019-08-17 13:11:02 |
|||
карма: 9 |
|
Ответов: 44
Рейтинг: 0
|
|||
Не знаю. У меня же стоит условие в цикле, если равно количеству строк в списке, цикл заканчивается. Он вообще не работает.
--- Добавлено в 2019-08-17 13:35:24 Эта же программа, но с такой частью схемы, работает. Редактировалось 1 раз(а), последний 2019-08-17 13:35:24 |
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Igor08, без обид, ты читать умеешь
Так ПРОЧИТАЙ Тебе же ссылку на пост дали. Неплохо даже наизусть заучить. Ну не виноват я, что там больше 256 символов. В первой картинке КОЛЬЦЕВАНИЕ, а во второй - ЦИКЛ Научишься схемы выкладывать (а не картинки) - будет более предметный разговор.... |
|||
карма: 9 |
|
Ответов: 44
Рейтинг: 0
|
|||
Так в первой картинке есть условие, при достижении равенства с количеством строк, цикл должен останавливаться. Наверно я чего-то не понимаю.
|
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Galkov писал(а): Так ПРОЧИТАЙ Тебе же ссылку на пост дали. Неплохо даже наизусть заучить. Igor08 писал(а): Наверно я чего-то не понимаю.Редактировалось 3 раз(а), последний 2019-08-17 14:01:16 |
|||
карма: 9 |
|
Ответов: 44
Рейтинг: 0
|
|||
Прочитал. Не понимаю в программировании. У меня по схеме вроде все последовательно работает.
--- Добавлено в 2019-08-17 14:29:33 Вот более полная схема первой картинки-схемы. Редактировалось 1 раз(а), последний 2019-08-17 14:29:33 |
|||
карма: 0 |
|
Ответов: 321
Рейтинг: 10
|
|||
карма: 1 |
|
Ответов: 44
Рейтинг: 0
|
|||
Последовательность вставки элементов в программу влияют на работу программы?
--- Добавлено в 2019-08-17 15:32:08
Моя программа работает только с ArrayEnum. Редактировалось 1 раз(а), последний 2019-08-17 15:32:08 |
|||
карма: 0 |
|
Ответов: 8918
Рейтинг: 823
|
|||
Igor08, а такая схема работает ?
Схема
|
|||
карма: 19 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Igor08 писал(а): Такая программа работает. Значит у меня в программе чем-то неправильноНе факт, что работает. Попробуйте загрузить в StrList какой-нибудь файл побольше... Упадет нахрен, да и все. Общее правило таково: тестирование доказывает наличие ошибок при их проявлении. Но никогда не доказывает отсутствие ошибок при отсутствии этих проявлений Как в Вашем случае. Следовательно, сделанный Вами вывод неверен (он противоречит вышеозначенному правилу) Поскольку Вы (по Вашим словам) ознакомились с "моделью паровозиков", будем говорить в ее терминах. Паровозики последовательно занимают следующие трассы: 1-й паровозик) Button.onClick -> ChanelToIndex.doWork1 2-й паровозик) ChanelToIndex.onIndex -> GetIndexData.doIndex 3-й паровозик) GetIndexData.onIndex -> Math.doOperation 4-й паровозик) Math.onResult -> Memory.doValue 5-й паровозик) Memory.onData -> Hub.doEvent1 6-й паровозик) Hub.onEvent1 -> Math.doOperation 7-й паровозик) Math.onResult -> If_else.doCompare 8-й паровозик) If_else.onFalse -> ArrayRW.doRead 9-й паровозик) ArrayRW.onRead -> ChanelToIndex.doWork2 Ну все - КЕРДЫК. По крайней мере, следующая трасса ChanelToIndex.onIndex -> GetIndexData.doIndex все еще занята 2-м паровозиком. И правильное функционирование станций (элементов) после такого крушения -- Вам никто не обещал. Перечитайте внимательно ссылку: Galkov писал(а): Грубо говоря поведение схемы непредсказуемо. Может быть все что хочешь - просто неправильное поведение элемента, сопровождаемое вопросами на форуме; падение (типа AV) схемы; утечка памяти, ......... А иногда это и работает (у нас заложен некоторый запас прочности).Мораль: КОЛЬЦЕВАНИЕ а в схемах HiAsm - недопустимо, в общем случае. А ЦИКЛ делается примерно так (типа, хочешь сравнивать ручками - да на здоровье):
--- Добавлено в 2019-08-17 16:59:50 Кстати говоря, пользоваться текстовым редактором для копирования схем - необязательно. Просто выделяешь нужное на рабочем поле HiAsm - и копируешь. Вставляешь на форум. И наоборот: копируешь с форума - и вставляешь это прямо на рабочее поле. Редактировалось 2 раз(а), последний 2019-08-17 17:00:48 |
|||
карма: 9 |
|
Ответов: 44
Рейтинг: 0
|
|||
Все примеры работают. Да действительно StrList не хочет работать с большим количеством строк. А какое максимальное количество строк в него можно записать и какая максимальная длина строк может быть?
|
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Igor08 писал(а): А какое максимальное количество строк в него можно записать и какая максимальная длина строк может быть?Блин......... У меня скоро цензурные слова закончатся. Совсем. Если пользоваться ЦИКЛОМ, то пока память в компе не закончится. А с КОЛЬЦЕВАНИЕМ -- нисколько. Просто НИЗЯ, и все. |
|||
карма: 9 |
|