La combinación de ancho de cadena literal con macro de la cadena
-
18-09-2019 - |
Pregunta
Tengo una macro para una cadena de caracteres de la siguiente manera:
#define APPNAME "MyApp"
Ahora quiero construir una amplia cadena usando esta macro haciendo algo como:
const wchar_t *AppProgID = APPNAME L".Document";
Sin embargo, esto genera una "concatenación de cadenas coincidentes" error de compilación.
¿Hay una manera de convertir la macro NOMBREAPLIC a una cadena literal de ancho?
Solución
¿Usted intentó
#define APPNAME "MyApp"
#define WIDEN2(x) L ## x
#define WIDEN(x) WIDEN2(x)
const wchar_t *AppProgID = WIDEN(APPNAME) L".Document";
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow