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

7 la respuesta

Posible convertir la lista de #defines en cadenas

Supongamos que tengo una lista de#defines en un archivo de encabezado para una biblioteca externa. Estas#defines representan códigos de error devueltos por funciones. Quiero escribir una función de conversión que pueda tomar como entrada un ...

2 la respuesta

Un grupo de macros variadic

Me gustaría tener un grupo de número variable de argumentos pasados a una macro. Tengo las siguientes macros que son incorrectas: #define M_NARGS(...) M_NARGS_(__VA_ARGS__, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0) #define M_NARGS_(_10, _9, _8, _7, _6, ...

3 la respuesta

¿Qué macro predefinida puedo usar para detectar el sonido metálico?

Estoy tratando de detectar el compilador utilizado para compilar mi código fuente. Puedo encontrar fácilmente macros predefinidas para verificar MSVC o GCC (verhttp://predef.sourceforge.net/ [http://predef.sourceforge.net/]por ejemplo), pero no ...

9 la respuesta

definición de macro que contiene la directiva #include

¿Hay alguna manera de definir una macro que contenga un#include directiva en su cuerpo? Si solo pongo el "#include", da el error C2162: "expected macro formal parameter"ya que aquí no estoy usando# para concatenar cadenas. Si uso "\# include", ...

5 la respuesta

Macro C ++ "si la clase está definida"

¿Existe tal macro en C ++ (compilador cruzado o específico del compilador): #if isclass(NameSpace::MyClass)Sería útil.

3 la respuesta

Preprocesador de C ++ # que define una palabra clave. ¿Cumple con los estándares?

Ayude a resolver el debate que está sucediendo en los comentarios enesta pregunta sobre bool y 1 [https://stackoverflow.com/questions/2725044/can-i-assume-booltrue-int1-for-any-c-compiler/2725063#2725063] : ¿Puede un preprocesador C ++ que ...

1 la respuesta

¿Usa el preprocesador de C para construir un literal de cadena para scanf?

Estoy intentando crear unsscanf literal de cadena para ayudar en la prevención de desbordamiento del búfer en C99. El objetivo es algo como: #define MAX_ARG_LEN 16 char arg[MAX_ARG_LEN] = ""; if (sscanf(arg, "%"(MAX_ARG_LEN-1)"X", &input) > 0)La ...

1 la respuesta

En una cláusula #define, ¿cómo hacer que el preprocesador reemplace un parámetro dentro de un nombre de variable?

Tengo el siguiente código: #define MY_MACRO(PARAM) int PARAM_int; double PARAM_double; [subsequent instructions]Desafortunadamente, no funciona, lo que significa que PARAM no se reemplaza dentro de los nombres de las variables. ¿Es esto ...

4 la respuesta

¿Son las macros Variadic no estándar?

Para debugbuilds, generalmente uso Clang, ya que formatea mejor las advertencias y los errores, y hace que sea un poco más fácil rastrearlos y solucionarlos. Pero recientemente, después de agregar una Macro con argumentos variados, Clang me dijo ...

3 la respuesta

¿Cómo funciona #error en C / C ++?

Supongo por # que solo es una utilidad en tiempo de compilación. ¿Cómo se puede usar en programas C / C ++? No encontré mucho al respecto en internet. Cualquier enlace sería útil.