void playSound(int s_sort)
{
char ss_sort[20]={0};
::sprintf_s(ss_sort,"./music/clear%d.wav",s_sort);
PlaySound(ss_sort,NULL,SND_ASYNC);
}
error C2664: “PlaySoundW”: 不能将参数 1 从“char [20]”转换为“LPCWSTR”
应该怎么转换呢
v
oid playSound(int s_sort)
{
char ss_sort[20]={0};
::sprintf_s(ss_sort,"./music/clear%d.wav",s_sort);
PlaySoundA(ss_sort,NULL,SND_ASYNC);
}
API默认是unicode字符集。用ANSI版本API
首先在工程的属性中看看工程是设置 Unicode ,还是 ANSI。如果是后者,且还有次错误,则在 ss_sort 前加强制转换就可以了。如果是前者, ss_sort 最好定义成 TCHAR 类型,使用 wsprintf 来生成字符串。
在项目属性中,把工程的字符集选择成多字符集也可以