Spec-Zone.ru › GCC 14 CPP

Оглавление

  • 1 Обзор
    • 1.1 Наборы символов
    • 1.2 Инициализация обработки
    • 1.3 Токенизация
    • 1.4 Язык предварительной обработки
  • 2 Файлы заголовков
    • 2.1 Синтаксис include
    • 2.2 Механизм include
    • 2.3 Путь поиска
    • 2.4 Файлы заголовков, включаемые только один раз
    • 2.5 Альтернативы обёртке #ifndef
    • 2.6 Вычисляемые include
    • 2.7 Обёртки заголовков
    • 2.8 Системные заголовки
  • 3 Макросы
    • 3.1 Макросы типа объектов
    • 3.2 Макросы типа функций
    • 3.3 Аргументы макроса
    • 3.4 Строковая форма
    • 3.5 Конкатенация
    • 3.6 Макросы с переменным числом аргументов
    • 3.7 Предопределённые макросы
      • 3.7.1 Стандартные предопределённые макросы
      • 3.7.2 Общие предопределённые макросы
      • 3.7.3 Системно-специфические предопределённые макросы
      • 3.7.4 Имена операторов языка C++
    • 3.8 Удаление и переопределение макросов
    • 3.9 Директивы внутри аргументов макроса
    • 3.10 Ловушки при работе с макросами
      • 3.10.1 Неправильное вложение
      • 3.10.2 Проблемы с приоритетом операторов
      • 3.10.3 Поглощение точки с запятой
      • 3.10.4 Дублирование побочных эффектов
      • 3.10.5 Самоссылочные макросы
      • 3.10.6 Предварительный просмотр аргументов
      • 3.10.7 Переводы строки в аргументах
  • 4 Условные операторы
    • 4.1 Применение условных операторов
    • 4.2 Синтаксис условных операторов
      • 4.2.1 Ifdef
      • 4.2.2 If
      • 4.2.3 Defined
      • 4.2.4 Else
      • 4.2.5 Elif
      • 4.2.6 __has_attribute
      • 4.2.7 __has_cpp_attribute
      • 4.2.8 __has_c_attribute
      • 4.2.9 __has_builtin
      • 4.2.10 __has_feature
      • 4.2.11 __has_extension
      • 4.2.12 __has_include
    • 4.3 Удаленный код
  • 5 Диагностика
  • 6 Управление строками
  • 7 Предикаты
  • 8 Другие директивы
  • 9 Вывод препроцессора
  • 10 Режим совместимости
    • 10.1 Лексический анализ в режиме совместимости
    • 10.2 Макросы в режиме совместимости
    • 10.3 Разное в режиме совместимости
    • 10.4 Предупреждения в режиме совместимости
  • 11 Детали реализации
    • 11.1 Определяемое реализацией поведение
    • 11.2 Пределы реализации
    • 11.3 Устаревшие возможности
      • 11.3.1 Утверждения
  • 12 Вызов
  • 13 Переменные среды
  • GNU Лицензия на свободную документацию
    • ДОПОЛНЕНИЕ: Как использовать эту лицензию для вашей документации
  • Индекс директив
  • Индекс параметров
  • Индекс понятий

Препроцессор C реализует язык макросов, используемый для преобразования программ на C, C++ и Objective-C перед их компиляцией. Он также может быть полезен сам по себе.

Авторское право © 1987-2024 Free Software Foundation, Inc.

Разрешается копировать, распространять и/или изменять этот документ на условиях GNU Лицензии на свободную документацию, версия 1.3 или более поздняя, опубликованная Free Software Foundation. Копия лицензии включена в раздел, озаглавленный «GNU Лицензия на свободную документацию».

В этом руководстве нет неизменяемых разделов. Тексты на обложке — (а) (см. ниже), а на задней обложке — (б) (см. ниже).

(а) Текст Free Software Foundation на передней обложке:

Руководство GNU

(б) Текст Free Software Foundation на задней обложке:

Вы свободны копировать и изменять это руководство GNU, как программное обеспечение GNU. Копии, опубликованные Free Software Foundation, собирают средства для развития GNU.

  • Обзор
  • Файлы заголовков
  • Макросы
  • Условные операторы
  • Диагностика
  • Управление строками
  • Предикаты
  • Другие директивы
  • Вывод препроцессора
  • Режим совместимости
  • Детали реализации
  • Вызов
  • Переменные среды
  • GNU Лицензия на свободную документацию
  • Индекс директив
  • Индекс параметров
  • Индекс понятий

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-14.2.0/cpp/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API