Resultados de la búsqueda a petición "c-preprocessor"

3 la respuesta

¿Cómo resolver la variable int antes de pasar a las macros C / C ++? [cerrado

Estoy intentando ejecutar el siguiente código: #define channel1 10 #define channel(id) channel##id int main(){ int id = 1; cout << channel(id)<<"\n"; return 0; }Obtuve el siguiente error:error: use of undeclared identifier 'channelid' En ...

2 la respuesta

¿Cómo concatenar, evaluar y stringificar macros?

Estoy tratando de stringificar la sustitución (evaluación) de una macro concatenación. Por ejemplo #include <stdio.h> #define FOO_ONE 12 #define FOO_TWO 34 #define BAR_ONE 56 #define BAR_TWO 78 #define MAKE_MAC(mac) // ... what to do here? void ...

1 la respuesta

¿Cómo interpretar # líneas prefijadas en la salida del preprocesador C?

El siguiente es el código de hello.c: #include <stdio.h> int main (void) { printf ("Hello, world!\n"); return 0; }Usé el comandogcc -E hello.c preprocesarlo y obtuve el siguiente resultado: # 1 "hello.c" # 1 "<built-in>" # 1 "<command-line>" # ...

3 la respuesta

Definición condicional de elementos en una macro X

Imagina que tengo unX macro [https://en.wikipedia.org/wiki/X_Macro]para una lista de elementos definidos de esta manera: #define X_MACRO(FN) \ FN(foo) \ FN(bar) \ FN(zip)Esto funciona muy bien y puedo llamarlo para generar el mismo código de ...

2 la respuesta

¿Por qué todos los archivos C escritos por mi profesor comienzan con un #?

¿Por qué todos los archivos C escritos por mi profesor comienzan con un #? Estoy revisando algunas notas del curso C, ycada El archivo fuente del programa C comienza con un solo# en la primera línea del programa. Luego hay espacios en blanco, y ...

1 la respuesta

Preprocesador: concatene una cadena con cada argumento en __VA_ARGS__

Me gustaría agregar un argumento macro en cadena a cada elemento en una macro variadic. Creo que sé lo que necesito, pero todavía no pude encontrar una solución que funcione. Dada una macro variadic como: #define FIELD_DECLARATION(NAME, ...

3 la respuesta

¿Por qué falla este reemplazo de macro anidado?

Estoy tratando de aplicar elX macro [https://stackoverflow.com/questions/6635851/real-world-use-of-x-macros] concepto, para tener la posibilidad de inicializar todos los miembros de la estructura a un valor predeterminado (no válido) ...

2 la respuesta

¿Por qué definir una macro con el mismo nombre y contenido en C?

Estoy investigandoif_link.h en los encabezados del kernel de Linux y contiene esta enumeración: enum { IFLA_UNSPEC, IFLA_ADDRESS, IFLA_BROADCAST, IFLA_IFNAME, IFLA_MTU, IFLA_LINK, IFLA_QDISC, IFLA_STATS, IFLA_COST, #define IFLA_COST ...

10 la respuesta

¿Por qué no concatenar archivos fuente C antes de la compilación? [duplicar]

Esta pregunta ya tiene una respuesta aquí: #incluye todos los archivos .cpp en una sola unidad de compilación? [/questions/543697/include-all-cpp-files-into-a-single-compilation-unit] 5 respuestas¿Los beneficios / desventajas de la construcción ...

3 la respuesta

Fichas de preprocesador válidas en macroconcatenación

Traté de entender las macros en c usando el operador de preprocesador de concatenación ## pero me di cuenta de que tengo problemas con los tokens. Pensé que era fácil, pero en la práctica no lo es. Entonces, la concatenación es para concatenar ...