R.16.1 Фазы препроцессорной обработки
R.16.1 Фазы препроцессорной обработки
По определению существует несколько фаз препроцессорной обработки. В конкретной реализации фазы могут сливаться, но результат все равно должен быть таким, как будто были выполнены все фазы.
Перечислим их.
При необходимости символы, зависящие от системы символы, обозначающие конец строки, заменяются на стандартный символ конца строки. Аналогичной замене подлежат все зависящие от системы символы. Определенные последовательности символов (триграфы) заменяются на эквивалентный им отдельный символ (§R.16.2).
Удаляются все такие пары символов: обратная дробная черта, следующий за ней символ конца строки. В результате будут слиты строки входного текста, из которых была удалена эта пара.
Входной текст разбивается на лексемы препроцессора и последовательность обобщенных пробелов. Каждый комментарий заменяется на один пробел. Входной текст не должен кончаться посреди лексемы или комментария.
Выполняются команды препроцессора, и производятся макроподстановки (§R.16.3, §R.16.4, §R.16.5, §R.16.6, §R.16.7 и §R.16.8).
В символьных константах и строках литералов комбинации специальных символов заменяются на свои эквиваленты (§R.2.5.2).
Сливаются соседние строки литералов.
Результат препроцессорной обработки подвергается синтаксическому и семантическому анализу, транслируется, а затем связывается с необходимыми библиотеками и другими программами.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Функции обработки ошибок
Функции обработки ошибок error_logПосылка сообщения об ошибке.Синтаксис:int error_log(string message, int message_type [, string destination [, string extra_headers]])Сообщение, посылаемое этой функцией, может быть направлено в журнал системных сообщений web-сервера, прот TCP или в файл.В первом аргументе message
10.1.3 Программы обработки прерываний
10.1.3 Программы обработки прерываний Как уже говорилось выше (раздел 6.4.1), возникновение прерывания побуждает ядро запускать программу обработки прерываний, в основе алгоритма которой лежит соотношение между устройством, вызвавшим прерывание, и смещением в таблице
Понятие события и его обработки
Понятие события и его обработки Рассматривая примеры Web-сценариев, мы исходили из предположения, что они выполняются при загрузке Web-страницы. Как мы уже знаем из главы 14, Web- сценарий исполняется в том месте HTML-кода Web-страницы, в котором присутствует создающий его тег
6.18 Сценарий обработки датаграммы
6.18 Сценарий обработки датаграммы Для лучшего понимания работы IP рассмотрим операции по обработке датаграммы в маршрутизаторе и хосте назначения. Выполняемые при этом шаги показаны на рис. 6.15. Рис. 6.15. Обработке датаграммыВозникающие проблемы и ошибки приводят обычно к
16.3.10. Директивы обработки ошибок
16.3.10. Директивы обработки ошибок Такая директива всего одна, но она очень полезна. Например, произошла ошибка 404 (файл не найден). Вы можете сопоставить этой ошибке URL, на который будет перенаправлен браузер пользователя. Обычно перенаправление устанавливают на документ,
Генератор со смещением фазы
Генератор со смещением фазы Классический RC-генератор со смещением фазы показан на рис. 8.7. Выход ОУ связан с тремя фазосмещающими RC-цепочками. Каждая цепочка производит некоторый фазовый сдвиг, и если общий сдвиг фазы, произведенный в трех цепях, равен 180°, могут
Программирование обработки событий
Программирование обработки событий Как видно из табл. 10.1, формы и элементы управления могут отвечать на многие события. Но когда форма действительно отвечает на какое-нибудь конкретное событие? Только тогда, когда она имеет соответствующую процедуру для этого события.
Роль обработки исключений в .NET
Роль обработки исключений в .NET До появления .NET обработка ошибок в операционной системе Windows представляла собой весьма запутанную смесь технологий. Многие программисты создавали свою собственную логику обработки ошибок, используемую в контексте приложения. Например,
Атомы обработки исключений в .NET
Атомы обработки исключений в .NET При создании программ с применением структурированной обработки исключений предполагается использовать следующие четыре взаимосвязанных элемента:• тип класса, который предоставляет подробную информацию о возникшей исключительной
Исключения, оставшиеся без обработки
Исключения, оставшиеся без обработки Здесь вы можете спросить, что произойдет в том случае, если не обработать исключение, направленное в ваш адрес? Предположим, что программная логика. Main() увеличивает скорость объекта Car выше максимальной скорости в отсутствие
Директива обработки ошибок
Директива обработки ошибок В СП ТС реализована директива #error. Ее формат:#error <текст>Обычно эту директиву записывают среди директив условной компиляции для обнаружения некоторой недопустимой ситуации. По директиве #error препроцессор прерывает компиляцию и выдает
12.4. Команды обработки текста
12.4. Команды обработки текста sortСортирует содержимое файла, часто используется как промежуточный фильтр в конвейерах. Эта команда сортирует поток текста в порядке убывания или возрастания, в зависимости от заданных опций. Ключ -m используется для сортировки и объединения
Программы для обработки MP3-файлов
Программы для обработки MP3-файлов Mp3directCut Сайт: http://www.mpesch3.de/Размер: 0,1 МбСтатус: FreewareИзменять MP3-файлы с помощью громоздкого звукового редактора очень неудобно. Да и на качестве звука отражается не лучшим образом: сначала файл «разжимается», потом, после обработки,
Порядок обработки сообщений
Порядок обработки сообщений Ниже описаны последовательности обработки командных сообщений объектами различных классов.Главное окно однооконного приложенияБольшинство командных сообщений передаются главному окну приложения. Для приложений, имеющих однооконный
Скорее всего, вам не избежать фазы приёмочного тестирования
Скорее всего, вам не избежать фазы приёмочного тестирования В идеальном мире Scrum’а результатом каждого спринта должна быть система, потенциально готовая к использованию. Бери и устанавливай, да? А вот и нет!По нашему опыту, такой подход обычно не работает. Там будет куча
Глубина обработки
Глубина обработки Более 40 лет раздел «Психология обучения и памяти» изучает глубину обработки получаемой человеком информации. Чем глубже эта информация обрабатывается, тем лучше она закрепляется в памяти. При этом речь идет не о том, что правильно учиться можно только