Questão de Programação — Linguagens de programação — CESPE / CEBRASPE 2024
Programação›Linguagens de programação
Código
ce172720
Banca
CESPE / CEBRASPE
Órgão
CTI
Ano
2024
Nível
Superior
Cargo
Tecnologista Pleno 2 - I - Especialidade: Indústria 4.0 e Governo Digital - Área de Atuação: Sistemas Ciberfísicos e Cidades Inteligentes
#define PI 3.14159
Struct CalculoCircunf{
private:
int raio;
int circunf;
int fcalcula (){
circunf = 2*PI*raio;
return circunf;
}
};
int main (){
CalculoCircunf p;
printf(“%d”, p.fcalcula( ) );
return 0;
}
Com base no código precedente, escrito em C++, julgue o item a seguir.A instrução #define PI 3.14159 faz com que toda ocorrência de PI no código seja substituída por 3.14159 antes da compilação do programa.
CCerto
EErrado
Revelar gabarito e comentário▾
GabaritoC — Certo
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Diretiva #define em C++
Gabarito: Certo (Alternativa C). A instrução #define PI 3.14159 é uma diretiva do pré-processador que realiza substituição textual: toda ocorrência do identificador PI no código fonte é trocada pelo literal 3.14159antes da compilação. O compilador nunca vê PI, apenas o valor numérico. Portanto, a afirmação está correta.
O pré-processador é a primeira fase da tradução do programa. Ele processa diretivas iniciadas com #, como #define, #include, etc. No caso, a macro PI é definida como 3.14159, e a substituição é meramente textual — não há verificação de tipo nem escopo. Esse comportamento é padrão em C e C++.
A banca testa o conhecimento básico sobre o funcionamento do pré-processador. Não se trata de uma constante em tempo de compilação (como const), mas de uma macro textual. Compreender essa distinção é essencial para programação em C/C++.