logo search
Подбельский Фомин_Программирование на языке СИ_

Реакция на ошибки.

Реакция на ошибки. Обработка директивы

#error последовательность _лексем

приводит к выдаче диагностического сообщения в виде, определенном последовательностью лексем. Естественно применение директивы #error совместно с условными препроцессорными командами. Например, определив некоторую препроцессорную переменную NAME

в дальнейшем можно проверить ее значение и выдать сообщение, если у NAME окажется другое значение:

!

Сообщение будет выглядеть так:

В интегрированной среде (например, Turbo С) сообщение будет выдано на этапе компиляции в таком виде:

В случае выявления такой аварийной ситуации дальнейшая препроцессорная обработка исходного текста прекращается, и только та часть текста, которая предшествует условию #if..., попадает в выходной файл препроцессора.