C, Objective-C выход препроцессора

Есть ли способ получить предварительно обработанный C/Objective-C код? У меня есть некоторые файлы, которые я приобрел, и хотел бы увидеть код, созданный некоторыми #defines.

Ответ 1

В командной строке gcc -E foo.m покажет вам предварительно обработанный вывод (как и для обычных файлов C/С++). Конечно, это также расширит любые операторы #include или #import, которые могут иметься в вашем коде.

Ответ 2

Изнутри Xcode:

  • Xcode 3: выберите файл, затем Сборка → Предварительный процесс.
  • Xcode 4: выберите файл, затем Продукт → Создать вывод → Сгенерировать предварительно обработанный файл.

Ответ 3

Используйте аргумент командной строки -E для gcc или clang. Это задокументировано как: "Только предварительная обработка, не компилировать, не собирать или не связывать", и, действительно, выводит препроцессорную версию на stdout.

Ответ 4

В Xcode 5: Выберите файл .m, затем Product → Perform Action → Preprocess ".m"