海绵布丁 发表于 2021-4-15 15:03:41

swprintf转换后乱码

#include<stdio.h>
#include<iostream>
#include<graphics.h>
#include<easyx.h>
#include<string.h>
#include<stdlib.h>
#include<Windows.h>

using namespace std;
int main()
{
        initgraph(640, 500);
        wchar_t str;
        swprintf(str, TEXT("%s"),"USMAL" );
        outtextxy(0,0,str);
        system("pause");
}
兄弟们,在运行的时候一到swprintf那条语句,保存到str里面的都是火星文,把swprintf改成wsprintf也没用,求怎么解决

yuxijian2020 发表于 2021-4-15 15:03:42

本帖最后由 yuxijian2020 于 2021-4-16 17:22 编辑

swprintf不是用作宽窄字节转换的,它的拼接也需要宽字节字符串
如果需要宽窄字节转换,建议百度char* 转 wchar_t*
页: [1]
查看完整版本: swprintf转换后乱码