Оператор goto

Оператор безусловного перехода goto имеет формат:

goto метка:

В теле той же функции должна присутствовать ровно одна конструкция вида:

метка: оператор:

Оператор goto передает управление на помеченный оператор. Метка – это обычный идентификатор, областью видимости которого является функция, в теле ко­торой он задан.

Использование оператора безусловного перехода оправдано в двух случаях:

· принудительный выход вниз по тексту программы из нескольких вложенных циклов или переключателей;

· переход из нескольких мест функции в одно (например, если перед выходом из функции всегда необходимо выполнять какие-либо действия).

В остальных случаях для записи любого алгоритма существуют более подходя­щие средства, а использование gotoприводит только к усложнению структуры программы и затруднению отладки. Применение gotoнарушает принципы структурного и модульного программирования, по которым все блоки, из кото­рых состоит программа, должны иметь только один вход и один выход.

В любом случае не следует передавать управление внутрь операторов if, switchи циклов. Нельзя переходить внутрь блоков, содержащих инициализацию пере­менных, на операторы, расположенные после нее, поскольку в этом случае ини­циализация не будет выполнена:

int k: ...

goto metka; ...

{int а = 3. b = 4; к = а + b;

metka: int m = к + 1; ...

}

После выполнения этого фрагмента программы значение переменной m не опре­делено.








Дата добавления: 2015-10-09; просмотров: 901;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.