Notación constante de caracteres C++

Estoy viendo una notación constante de caracteres en el código C++ que me parece ajena. Por favor edúcame sobre esto:

if (dc == L' '){

¿Qué indica la L?

¿Es parte del estándar?

Gracias,

lang2

preguntado el 12 de junio de 12 a las 12:06

2 Respuestas

L es un especificador literal. Para los personajes, significa wchar_t, entonces el tipo de L'a' is wchar_t. Para cadenas, significa "matriz de wchar_t", entonces L"hello" es un wchar_t[6]. (Y para números enteros, significa "largo", por lo que 1L es un long int.)

Respondido el 12 de junio de 12 a las 12:06

Se trata de un macro especificador literal que transforma el carácter o la matriz de caracteres en un carácter ancho (o matriz de caracteres anchos).

L'a' es la wchar_t equivalente de la char 'a'.

Si está acostumbrado al desarrollo de Windows, es equivalente a _T() if UNICODE está definido.

Respondido el 12 de junio de 12 a las 12:06

No, en absoluto. L es un especificador literal, como U. - Kerrek SB

@KerrekSB no sabía eso. estoy acostumbrado a usar _T que es una macro, supuse L también lo fue - Luciano Grigore

@TCS Lo sé, está en la respuesta. - Luciano Grigore

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.