Necesito escribir algún código para verificar que una macro está definida pero vacía (sin ningún valor). La prueba no necesita estar en tiempo de compilación.Pruebe si el valor de una macro de C está vacío
Estoy intentando escribir:
#if (funcprototype == "")
MY_WARN("funcprototype is empty");
#endif
el código no compila, como funcprototype
se expande a vacío.
La prueba no necesita ser una prueba en tiempo de compilación, pero ¿desea utilizar el resultado en una directiva '# if'? ¿Qué pasa si 'funcprototype' tiene una lista de reemplazo no vacía, pero después del reemplazo se expande a nada (debido a la nueva exploración). –
Esto parece ser un duplicado de http://stackoverflow.com/questions/4102351/test-for-empty-macro-definition –