You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中使用C++播放音频报错undefined reference to `__imp_PlaySoundA'如何解决

VSCode C++ PlaySoundA未定义引用报错解决

错误原因

你遇到的undefined reference to __imp_PlaySoundA报错属于链接阶段错误,原因是调用了Windows多媒体API PlaySound,但编译时没有链接对应的依赖库winmm.lib。

修复步骤

若使用MinGW工具链(VSCode C++开发最常用配置)

  • 打开项目.vscode目录下的tasks.json文件
  • 在编译参数args数组的末尾添加链接参数-lwinmm,示例配置如下:
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "你的mingw安装路径/bin/gcc.exe",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-lwinmm"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ],
    "version": "2.0.0"
}
  • 保存配置后重新编译运行程序即可

若使用MSVC工具链

  • 打开tasks.json,在编译参数args数组末尾直接添加winmm.lib即可

配套代码校验

确保你的代码头部已经引入了对应的头文件:

#include <windows.h>
#include <mmsystem.h>

如果播放本地音频,优先使用绝对路径测试,避免相对路径匹配错误导致播放失败。

内容的提问来源于stack exchange,提问作者Harvinder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 04:36:03