/P (pré-processar em um arquivo)

Pré-processa arquivos de origem em C e C++ e grava a saída pré-processada em um arquivo.

Sintaxe

/P

Comentários

O arquivo tem o mesmo nome base que o arquivo de origem e uma extensão .i. No processo, todas as diretivas do pré-processador são realizadas, as expansões de macro são executadas e os comentários são removidos. Para preservar comentários na saída pré-processada, use a opção /C (Preservar comentários durante o pré-processamento) junto com /P.

A /P adiciona diretivas #line à saída no início e no final de cada arquivo incluído e em torno de linhas removidas por diretivas de pré-processador para compilação condicional. Essas diretivas renumeram as linhas do arquivo pré-processado. Como resultado, os erros gerados durante os estágios posteriores do processamento referem-se aos números de linha do arquivo de origem inicial em vez das linhas no arquivo pré-processado. Para suprimir a geração de diretivas #line, use /EP (pré-processar para stdout sem diretivas #line) bem como /P.

A opção /P suprime a compilação. Ela não produz um arquivo .obj, mesmo se você usar /Fo (Nome do arquivo-objeto). Você deve reenviar o arquivo pré-processado para compilação. A /P também suprime os arquivos de saída das opções /FA, /Fa e /Fm. Para obter mais informações, confira /FA, /Fa (Arquivo de listagem) e /Fm (Mapfile de nome).

Para definir esta opção do compilador no ambiente de desenvolvimento do Visual Studio

  1. Abra a caixa de diálogo Páginas de Propriedades do projeto. Para obter detalhes, confira Definir as propriedades de build e do compilador do C++ no Visual Studio.

  2. Selecione a página de propriedades Propriedades da Configuração>C/C++>Pré-processador.

  3. Modifique a propriedade Gerar Arquivo Pré-processado.

Para definir essa opção do compilador via programação

Exemplo

A linha de comando a seguir pré-processa ADD.C, preserva os comentários, adiciona diretivas #line e grava o resultado em um arquivo, ADD.I:

CL /P /C ADD.C

Confira também

Opções do compilador MSVC
Sintaxe da linha de comando do compilador MSVC
/Fi (pré-processar nome do arquivo de saída)