C | Macro y preprocesador | Pregunta 13

¿Salida del siguiente programa C?

#include<stdio.h>
#define max abc
#define abc 100
  
int main()
{
    printf("maximum is %d", max);
    return 0;
}

(A) máximo es 100
(B) abcimum es 100
(C) 100imum es 100
(D) abcimum es abc

Respuesta: (A)
Explicación: Después del procesamiento previo, el código fuente se convierte en:

int main()
{
    printf("maximum is %d", 100);
    return 0;
}

El «máximo» en máximo no es un token, por lo que no coincide con el máximo durante el preprocesamiento.
Entonces, la opción (A) es correcta.
Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *