Udostępnij za pośrednictwem


C4905 (poziom 1) ostrzeżenia kompilatora

szeroki literału ciągu oddanych do "LPSTR"

Kompilator wykryto niebezpiecznych rzutowania.Obsada pomyślnie, ale należy użyć procedury konwersji.

To ostrzeżenie jest domyślnie wyłączona.Zobacz Kompilator ostrzeżenia że są wyłączone domyślnie Aby uzyskać więcej informacji.

Przykład

Poniższy przykład generuje 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;
}