C | Macro y preprocesador | Pregunta 9

¿Producción?

#include<stdio.h> 
#define f(g,g2) g##g2 
int main() 
{ 
   int var12 = 100; 
   printf("%d", f(var,12)); 
   return 0; 
}

(A) 100
(B) Error del compilador
(C) 0
(D) 1

Respuesta: (A)
Explicación: El operador ## se llama «Token-Pasting» o Operador «Fusionar». Combina dos tokens en un token. Entonces, después del preprocesamiento, la función principal se convierte en la siguiente e imprime 100.

int main() 
{ 
   int var12 = 100; 
   printf("%d", var12); 
   return 0; 
}

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 *