Шрифт:
Проверки соблюдения условий
Несмотря на то, что вставка на этапе разработки программы с помощью условной компиляции отладочного кода, такого как вызовы
В тех случаях, когда внутренняя логика системы нуждается в подкреплении, X/Open предоставляет макрос
Макрос
Заголовочный файл assert.h определяет макросы в зависимости от определения флага
в каждый исходный файл.
Этот метод применения порождает проблему. Если вы используете
Вы также должны убедиться в том, что у выражения макроса
Выполните упражнение 10.2.
Далее приведена программа assert.c, определяющая функцию, которая должна принимать положительное значение. Она защищает от ввода некорректного аргумента благодаря применению макроса
После включения заголовочного файла assert.h и функции "квадратный корень", проверяющей положительное значение параметра, вы можете писать функцию
Теперь при выполнении программы вы увидите нарушение в макросе
Как это работает
Когда вы попытаетесь вызвать функцию