СПО в българските училища -Архив на блогове - BASIC-256
ОСНОВЕН-256. Глава 18
Продължаваме да публикуваме превода на книгата на Джеймс Рено. Тази глава е преведена от Владимир Черни. Съдържание:
Глава 18 Клопки за грешки по време на изпълнение
Ако сте работили върху примерите и сте създали своите програми, сте виждали грешки, които се случват, когато програмата работи. Такива грешки се наричат „грешки по време на изпълнение“ (на английски: „runtime errors“). BASIC-256 включва група от специални инструкции, които ви позволяват да програмирате възстановяване или обработка на грешки.
Хващането на грешки, дори и да не мислите за това, може да причини проблеми. Трябва да се използва само когато е необходимо и трябва да се деактивира, когато не е необходимо.
Грешка при улавяне
Етикетonerror |
Създава прихващане на грешки, програмата автоматично прескача към подпрограмата, посочена от етикета, когато възникне грешка.
Каква грешка е възникнала?
Понякога не е достатъчно да знаете, че е възникнала грешка. Има функции, които връщат номера на грешката (lasterror ), програмния ред, където е възникнала грешката (lasterrorline ), текстово съобщение, обясняващо естеството на грешката (lasterrormessage ) и допълнителни съобщения за грешка (lasterrorextra ).
Програма 100 променя предишната програма и отпечатва подробностите за възникналата грешка.
lasterror илиlasterror()lasterrorline илиlasterrorline()lasterrormessage илиlasterrormessage()lasterrorextra илиlasterrorextra() |
Четири функции връщат информация за последната уловена грешка. Ценностите оставатнепроменен, докато не възникне друга грешка.
последна грешка | Връща номера на последната уловена грешка. Ако няма грешки, връща нула. Вижте Номера на грешки в Приложение J за пълен списък на грешки, които могат да бъдат прихванати. |
последна грешка | Връща номера на реда, където е възникнала грешката |
последно съобщение за грешка | Връща низ, описващ грешката |
lasterrorextra | Връща низ с допълнително описание на грешката. За повечето грешки тази функция не извежда нищо. |
Деактивиране на режима за прихващане на грешки
Понякога имате нужда от програма, която да улавя грешки в една част от нея и да не улавя в друга. Ще видите такива примери в следващите глави.
Операторътofferror деактивира режима за прихващане на грешки. След него всяка грешка ще спре работата на програмата. 1 onerror errortrap 2 print "z = " + z 3 print "Продължава след първата грешка" 4 5 offerror 6 print "z = " + z 7 print "Продължава след втора грешка" 8 9 край 10 11 errortrap: 12 print "Прихващането на грешка е активирано" 13 return Pro gram 101 Прихващането на грешки е деактивирано Прихващането на грешки е активирано z = 0 Продължете да работи след първата грешка ГРЕШКА на ред 6: Неизвестна променлива Примерен програмен изход 101 Прихващането на грешки е деактивирано
Къде да изтеглите BASIC-256:
За ALT Linux дистрибуции
Как да инсталирате BASIC-256 на Linux
За Alt Linux: конфигуриране на хранилище и пакет за актуализиране/инсталиране чрез synaptic или aptЗа базирани на rpm дистрибуции: rpm -Uvh .rpm