用C语言播放mp3格式的音乐

用C语言播放mp3格式的音乐目录前言之前有写过在 c 程序里添加背景音乐 用的是 PlaySound 这个函数不过这个函数是只能播放 wav 格式的音乐 这次是用 mciSendStrin 函数可以用来播放 MP3 格式的音乐如何用 c 语言插入 背景 音乐 mciSendStrin 函数简介 mciSendStrin 是用来播放多媒体文件的 API 指令 可以播放 MPEG AVI WAV MP3 等等 需要的头文件 include mmsystem h 基本的播放音乐模板 include windows h i windows h mmsystem h

前言

之前有写过在c程序里添加背景音乐,用的是PlaySound这个函数不过这个函数是只能播放wav格式的音乐。 这次是用mciSendString函数可以用来播放MP3格式的音乐。 用这个函数的时候下载的音乐格式一定要是MP3的, 但是网易云下载的音乐虽然是MP3格式的但是在这个函数是播放不了的,因为下载的音乐其实是flac格式, 所以播放不了,所以大家要在音乐下载才可以播放。 

如何用c语言插入(背景)音乐

mciSendString函数简介

mciSendString是用来播放多媒体文件的API指令,可以播放MPEG,AVI,WAV,MP3,等等, 需要的头文件#include 
   
  

基本的播放音乐模板

#include 
     #include 
     #pragma comment(lib,"Winmm.lib") int main(void) { 
    mciSendString("open 1.mp3 alias bkmusic", NULL, 0, NULL); //open指令打开需要播放的音乐,alias后面制定了前面文件路径的别名,以后想要操作这个文件直接使用这个别名就可以了. //如果音乐文件和我们的debug文件夹在同一目录下,就可以像我这样不用写路径,直接音乐名。 //如果音乐文件不是上面的情况就得写清楚路径。 //例: D盘下的demo目录有一个叫1.MP3的文件 //mciSendString("open D:\\demo\\1.mp3 alias bkmusic", NULL, 0, NULL); mciSendString("play bkmusic repeat", NULL, 0, NULL); //循环播放音乐 system("pause"); return 0; } 
mciSendString("stop bkmusic", NULL, 0, NULL); //停止播放音乐 mciSendString("close bkmusic", NULL, 0, NULL); //关闭音乐 

各种报错的解决办法

问题如下:
在这里插入图片描述
解决如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述










上述问题好像只有vs版本的编译器才会出现。vc6.0不会出现上述错误。

vc6.0 播放音乐项目模板 链接:https://pan.baidu.com/s/1Qa8sJJKxAwbqHW0Es1m8fA  提取码:m88a 
vs2010 播放音乐项目模板 链接:https://pan.baidu.com/s/16nlP62c7HmNJAQn0AnznSg  提取码:62q5 

Win10系统 vs 2019打开vs 2017、vs 2010等低版本.sln文件方法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224632.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午11:30
下一篇 2026年3月17日 上午11:30


相关推荐

  • 静态代码检查报告

    静态代码检查报告今天在下面刊载一篇小王同学写的静态代码检查报告 图文并茂 条理清晰 1 工具说明 FindBugs 是一个静态分析工具 它检查类或者 JAR 文件 将字节码与一组缺陷模式进行对比以发现可能的问题 有了静态分析工具 就可以在不实际运行程序的情况对软件进行分析 不是通过分析类文件的形式或结构来确定程序的意图 而是通常使用 Visitor 模式 Findbugs 可以

    2025年11月16日
    5
  • 自旋锁与互斥锁的区别

    自旋锁与互斥锁的区别自旋锁和互斥锁的区别 POSIXthreads 简称 Pthreads 是在多核平台上进行并行编程的一套 API 线程同步是并行编程中非常重要的通讯手段 其中最典型的应用就是用 Pthreads 提供的锁机制 lock 来对多个线程之间的共享临界区 CriticalSect 进行保护 另一种常用的同步机制是 barrier Pthreads 提供了多种锁机制 Mutex 互斥量 p

    2026年3月17日
    2
  • Windows 10 如何添加开机启动项

    Windows 10 如何添加开机启动项如果想要删除开机启动项 可以选中该程序 然后设置 禁用 即可 如果想要添加启动项 可以将软件快捷方式移入开机启动文件夹中 我们可以在任务管理器中查看是否成功添加开机启动项 开机启动文件夹如图所示 此时文件夹中内容为空 按下 win R 调出运行窗口 并输入 即可进入开机启动文件夹

    2026年3月19日
    3
  • Java 技术是什么?

    Java 技术是什么?Java技术既是一种高级的面向对象的编程语言,也是一个平台。Java技术基于Java虚拟机(Javavirtualmachine,JVM)的概念——这是语言与底层软件和硬件之间的一种转换器。Java语言的所有实现都必须实现JVM,从而使Java程序可以在有JVM的任何系统上运行。Java编程语言(Javaprogramminglanguage)与众不同之

    2022年7月8日
    24
  • AnyCast技术浅析

    AnyCast技术浅析一常见通信方式1.1UniCastAnyCast1.2MultiCast1.3BroadCast二什么是BGPAnyCast三AnyCast技术特点四AnyCast应用场景4.1场景一:基于IPAnycast+BGP的DNS部署4.2场景二:防范DDOS攻击4.3场景三:大型企业CDN部署4.4场景四:时延敏感度高的内容服务业务五AnyCast总结5.1优点5.2缺点一常见通信方式1.1Un…

    2022年5月24日
    56
  • OpenClaw优质Skill:自动发布小红书

    OpenClaw优质Skill:自动发布小红书

    2026年3月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号