# define и # undef не должны использоваться в зарезервированном идентификаторе или зарезервированном имени макроса
# define и # undef не должны использоваться в зарезервированном идентификаторе или зарезервированном имени макроса.
Зарезервированные идентификаторы и имена зарезервированных макросов предназначены для использования реализацией. Удаление или изменение значения зарезервированного макроса может привести к неопределенному поведению. Это правило применимо к следующему:
Идентификаторы или имена макросов, начинающиеся с подчеркивания
Идентификаторы в области файлов, описанные в стандартной библиотеке C
Имена макросов, описанные в стандартной библиотеке C, определяются в стандартном заголовке
Средство проверки правил может пометить различные идентификаторы или макросы в зависимости от версии стандарта C, используемой в анализе. См. C standard version (-c-version)
. Например, если вы запускаете анализ C99, зарезервированные идентификаторы и макросы определяются в ISO®/ IEC 9899: стандарт 1999, раздел 7, «Библиотека».
Макрос macro_name
не подлежит переопределению.
Макрос macro_name
не должно быть неопределенным.
Макрос macro_name
не должно быть определено.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
Группа: Стандартные библиотеки |
Категория: Требуемая |
Категория AGC: Требуется |