C语言用mmsystem播放音乐

问题遇到的现象和发生背景

C语言用mmsystem播放音乐,提示”converting to execution character set: Illegal byte sequence“

问题相关代码,请勿粘贴截图
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <windows.h>
#include <mmsystem.h>
#include <tchar.h>
#include <wchar.h>
#pragma comment(lib, "winmm.lib") // 使用音乐播放库
int main()
{
    mciSendString(L"open 孙燕姿-绿光.mp3 alias bkmusic", NULL, 0, NULL);
    mciSendString(_T("play bkmusic repeat"), NULL, 0, NULL);
    system("pause");
    return 0;
}

运行结果及报错内容

lab.cpp: In function 'int main()':
lab.cpp:11:19: error: converting to execution character set: Illegal byte sequence
mciSendString(L"open 孙燕姿-绿光.mp3 alias bkmusic", NULL, 0, NULL);

我的解答思路和尝试过的方法

不知道为什么”L“会错

我想要达到的结果

正常播放音乐

mciSendString("open 烟袋斜街.mp3 alias BGM", NULL, 0, NULL);
mciSendString("play BGM repeat", NULL, 0, NULL);

这是我写过的代码,你像这样写,不用加前缀试试