реклама
Бургер менюБургер меню

Программист – Программирование на gforth (страница 12)

18

+

— произвольное смещение.

Пример арифметики указателей:

CREATE num-array 1 , 2 , 3 , \ Массив [1, 2, 3]

num-array @ . \ Выводит 1 (первый элемент)

num-array CELL+ @ . \ Выводит 2 (второй элемент)

8. Типичные ошибки

Доступ за границы массива — приводит к повреждению памяти.

Неосвобождённая память — утечка памяти при многократном вызове ALLOCATE.

Использование неинициализированных переменных — чтение из неинициализированной памяти даёт непредсказуемый результат.

Ошибки выравнивания — доступ к невыровненным адресам может быть медленным или вызывать ошибки.

Попытка изменить константу — приведёт к ошибке или неопределённому поведению.

9. Отладка работы с памятью

Полезные команды: * .S — просмотр стека; * SEE — декомпиляция слов; * DUMP — дамп памяти (адрес размер DUMP).

Конец ознакомительного фрагмента.

Текст предоставлен ООО «Литрес».

Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.