具体播放的代码是这样的int main(){ mciSendString("open D:\..._c语言音乐播放完后怎么再次播放">
赞
踩
为了实现用c语言播放音乐,查阅了一些资料,发现要用到mciSendString这个函数,这是windows的一个API,引用的话需要在头文件处输入指令
#pragma comment(lib,"Winmm.lib")
//头文件
#include<mmsystem.h>
具体播放的代码是这样的
- int main()
- {
- mciSendString("open D:\\MusicResource\\abc.mp3 alias bkmusic", NULL, 0, NULL);
- mciSendString("play bkmusic repeat", NULL, 0, NULL); //循环播放音乐
-
- _getch();
- return 0;
- }
open指令打开需要播放的音乐,alias后面制定了前面文件路径的别名,以后想要操作这个文件直接使用这个别名就行了,后面的三个参数平时,就记着写作NULL,0,NULL即可。
第二条play指令后面接上面定义的别名,repeat表示歌曲循环播放。如果想要在音乐播放时停止播放,有以下代码
- mciSendString("stop bkmusic", NULL, 0, NULL); //停止播放音乐
- mciSendString("close bkmusic", NULL, 0, NULL); //关闭音乐
总而言之:play mymusic 开始播放,stop mymusic 停止播放,close mymusic 关闭文件,如果需要同时播放多个音乐的话应该为每个音乐设置不同的别名,这样就可以了
还可以将音乐播放封装为一个函数
- void PlayMusic(const char* FileName)
- {
- char cmdString[50] = "open ";
- strcat_s(cmdString, FileName);
- strcat_s(cmdString, " alias bkmusic");
- mciSendString("close bkmusic", NULL, 0, NULL); //把上一次的音乐关掉
- mciSendString(cmdString, NULL, 0, NULL); //打开音乐
- mciSendString("play bkmusic", NULL, 0, NULL); //播放一次音乐
- }
- int main()
- {
- PlayMusic("D:\\MusicResource\\abc.mp3");
- _getch();
- return 0;
- }
额外:还有一个函数PlaySound可以用来播放音乐,但是不支持mp3和wma
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。