Compartir a través de


Advertencia del compilador (nivel 1) C4905

Actualización: noviembre 2007

Mensaje de error

conversión de literal de cadena de tipo ancho a 'LPSTR'
wide string literal cast to 'LPSTR'

El compilador detectó una conversión no segura. La conversión tuvo lugar, pero es necesario utilizar una rutina de conversión.

De forma predeterminada, esta advertencia está desactivada. Para obtener más información, vea Advertencias del compilador desactivadas de forma predeterminada.

Ejemplo

El ejemplo siguiente genera el error C4905.

// C4905.cpp
// compile with: /W1
#pragma warning(default : 4905)
#include <windows.h>
#include <stdlib.h>
#include <stdio.h>

int main()
{
    LPSTR y = (LPSTR)L"1234";   // C4905

    // try the following lines instead
    // wchar_t y[128];
    // size_t  sizeOfConverted;
    // errcode err = 0;
    //
    // err = mbstowcs_s(&sizeOfConverted, &y[0], 128, "12345", 4);
    // if (err != 0)
    // {
    //     printf_s("mbstowcs_s failed!");
    //     exit (-1);
    // }
    // wprintf(L"%s\n", y);
    
    return 0;
}