文本输出功能无法正常运行

0

环境:Window11下GCC10.3

字符串指针的隐式类型转换会引起编译报错

对其指定显示类型转换不会报错且能正常通过编译,但显示信息丢失

#include <graphics.h>

int main()
{
    auto window = initgraph(1000, 600);

    //outtextxy(0,0,L"string");// 此处会报错“从const wchar_t*到 TCHAR 的转换无效”
    outtextxy(0,0,(LPCTSTR)L"string");// 此处不会报错,但显示信息丢失,仅有第一个字节的字符能够显示

    while (IsWindow(window))
        ;
    closegraph();
}

包括std::wstring在内,也会出现相同的问题,其他文本输出函数也相同

ava
哲学

2023-12-9

0

由于 mingw 各个分支对 unicode 的支持情况有所不同,所以 easyx for mingw 版本暂时还未支持宽字符(unicode),请使用 mbcs 字符集。

如果需要使用 unicode 字符集,请使用 vs。

ava
慢羊羊

2023-12-10

技术讨论社区