En los lenguajes de programación C y C ++, ¿cuál es la diferencia entre usar corchetes angulares y usar comillas en una includedeclaración, de la siguiente manera? #include <filename> #include
En los lenguajes de programación C y C ++, ¿cuál es la diferencia entre usar corchetes angulares y usar comillas en una includedeclaración, de la siguiente manera? #include <filename> #include
¿Por qué el preprocesador C en GCC interpreta la palabra linux(letras minúsculas) como la constante 1? prueba.c: #include <stdio.h> int main(void) { int linux = 5; return 0; } Resultado de $ gcc -E test.c(detener después de la etapa de preprocesamiento): .... int main(void) { int 1 =...
En muchas macros C / C ++, veo el código de la macro envuelto en lo que parece un do whilebucle sin sentido . Aquí hay ejemplos. #define FOO(X) do { f(X); g(X); } while (0) #define FOO(X) if (1) { f(X); g(X); } else No puedo ver lo que do whileestá haciendo. ¿Por qué no escribir esto sin...
En C / C ++ / Objective C puede definir una macro utilizando preprocesadores de compilación. Además, puede incluir / excluir algunas partes del código utilizando preprocesadores del compilador. #ifdef DEBUG // Debug-only code #endif ¿Hay una solución similar en
He estado viendo un código como este generalmente al comienzo de los archivos de encabezado: #ifndef HEADERFILE_H #define HEADERFILE_H Y al final del archivo es #endif ¿Cuál es el propósito de
Cuál es mejor usar y por qué, en un proyecto grande: #if DEBUG public void SetPrivateValue(int value) { ... } #endif o [System.Diagnostics.Conditional("DEBUG")] public void SetPrivateValue(int value) { ...
Estoy revisando algunas notas del curso C, y cada archivo fuente del programa C comienza con un solo #en la primera línea del programa. Luego hay líneas en blanco, y luego otras cosas seguidas de la mainfunción. ¿Cuál es el motivo de la #? (Está fuera de plazo ahora y realmente no puedo...
Estoy trabajando en un proyecto que tiene mucho código C heredado . Comenzamos a escribir en C ++, con la intención de convertir también el código heredado. Estoy un poco confundido acerca de cómo interactúan C y C ++. Entiendo que al envolver el código C con extern "C"el compilador de C ++ no...
¿Dónde están MINy se MAXdefinen en C, en todo caso? ¿Cuál es la mejor manera de implementarlos de la forma más genérica posible? (Se prefieren las extensiones / compiladores del compilador para compiladores
¿Cómo defino una variable de preprocesador a través de CMake? El código equivalente sería #define
На этот вопрос есть ответы на Stack Overflow на русском : Как узнать список всех определённых макросов? ¿Hay alguna manera para que gcc / g ++ descargue su preprocesador definido desde la línea de comando? Me refiero a cosas como __GNUC__,...
Estoy creando una aplicación que procesa datos confidenciales de tarjetas de crédito. Si mi código se está ejecutando en modo de depuración, quiero registrar estos datos en la consola y hacer algunos volcados de archivos. Sin embargo, en la versión final de la tienda de aplicaciones (es decir,...
Hoy estoy escribiendo mi primera página de afeitar, no puedo entender cómo ingresar #if debug #else #endif ¿Como puedo ingresar el preprocesador en la maquinilla de
Me preguntaba si alguien podría explicarme qué hace la #pragma packdeclaración del preprocesador y, lo que es más importante, por qué uno querría usarla. Revisé la página de MSDN , que ofrecía algunas ideas, pero esperaba escuchar más de personas con experiencia. Lo he visto en código antes,...
Intentando crear una macro que se pueda usar para imprimir mensajes de depuración cuando se defina DEBUG, como el siguiente pseudocódigo: #define DEBUG 1 #define debug_print(args ...) if (DEBUG) fprintf(stderr, args) ¿Cómo se logra esto con una
Digamos que tengo un archivo fuente con muchas directivas de preprocesador. ¿Es posible ver cómo se ve después de que el preprocesador haya terminado con
Quiero escribir una macro en C que acepte cualquier número de parámetros, no un número específico ejemplo: #define macro( X ) something_complicated( whatever( X ) ) donde Xhay cualquier número de parámetros Necesito esto porque whateverestá sobrecargado y se puede llamar con 2 o 4...
Necesito mi código para hacer cosas diferentes según el sistema operativo en el que se compila. Estoy buscando algo como esto: #ifdef OSisWindows // do Windows-specific stuff #else // do Unix-specific stuff #endif ¿Hay alguna forma de hacer esto? ¿Hay una mejor manera de hacer lo...
¿Cuál es la razón de la siguiente advertencia en algunos compiladores de C ++? No hay nueva línea al final del archivo ¿Por qué debería tener una línea vacía al final de un archivo de origen /
Tengo dos macros FOO2y FOO3: #define FOO2(x,y) ... #define FOO3(x,y,z) ... Quiero definir una nueva macro de la FOOsiguiente manera: #define FOO(x,y) FOO2(x,y) #define FOO(x,y,z) FOO3(x,y,z) Pero esto no funciona porque las macros no se sobrecargan en la cantidad de argumentos. Sin modificar...