五分钟让你的C语言播放音乐 |
您所在的位置:网站首页 › easyx播放音乐卡 › 五分钟让你的C语言播放音乐 |
文章目录
前言一、mciSendString函数官方枯燥解释:说人话:
二、上代码1.必要的头文件和预处理#include
前言
播放windows的一个API函数有两个PlaySound和mciSendString PlaySound可以用来播放音乐,但是不支持mp3和wma 因此今天我们用mciSendString函数来播放音乐 一、mciSendString函数 官方枯燥解释:函数原型为: MCIERROR mciSendString( LPCSTR lpstrCommand, LPSTR lpstrReturnString, UINT uReturnLength, HWND hwndCallback ); 使用mciSendString播放音乐 1,返回值:MCIERROR即DWORD类型,而DWORD类型就是unsigned int,执行成功返回0,出错返回非0值 2,lpstrCommand,指向以null结尾的命令字符串:”命令 设备[参数]” 3,lpstrReturnString,指向接收返回信息的缓冲区,为NULL时不返回信息 4,uReturnLength,上述缓冲区的大小 5,hwndCallback,在命令串中含notify时,它指定一个回调窗口的句柄,一般为NULL 说人话:mciSendString(" ",0,0,0); 第一个参数用来发出指令 一共有四个: open 打开音乐文件 play 播放音乐 repeat 重复播放 close 关闭音乐文件 二、上代码 1.必要的头文件和预处理我在很久之前刚开始想要播放音乐的时候也看了大部分的文章找了很多资料但是都说的不是特别详细 今天详细介绍一下必要的两个头文件和一个预处理 #includeAPI函数必然要用windows头文件 同时也用到system(“pause”);函数防止程序直接结束导致的不出声音 #include —用来包含多媒体设备接口头文件 #pragma comment (lib,“winmm.lib”)—用来加载静态库 2.音乐文件值得注意的是mciSendString支持MPEG,AVI,WAV,MP3等格式 但是建议大家下载的音乐不要在网易云上其解码方式不一样可能导致有的播放失败下载音乐之后点击源文件所在目录 具体三种方法 在另一篇文章中讲过https://blog.csdn.net/weixin_51484780/article/details/118851294 否则会出现报错 这里我的音乐文件名称是2.mp3 代码如下(示例): #include #include//包含多媒体设备接口头文件 #pragma comment (lib,"winmm.lib")//加载静态库 int main() { //alias 的作用是取别名 mciSendString("open 2.mp3 alias a ",0,0,0);//音乐在当前目录下也可以写"open ./2.mp3"./这里可以省略 mciSendString("play a", 0, 0, 0); //mciSendString("repeat a", 0, 0, 0); repeat 重复播放 //mciSendString("close a", 0, 0, 0); close 关闭播放 system("pause");//这里没有暂停程序会直接停止听不到音乐 return 0; }还有一点要说明的是当你的音乐不和源文件在同一目录下的时候需要open 后边加上该音乐文件的相对路径 运行过程如下,声音大家自己去倾听吧: 此时无声胜有声 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |