在c语言程序中怎样载入背景音乐啊,是背景音乐哦,求函数具体用法和实例。谢谢

 我来答
娱乐小八卦啊a
高粉答主

2020-04-02 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117825

向TA提问 私信TA
展开全部

代码如下:

#include <windows.h>

#include <mmsystem.h>

#pragma comment(lib, "WINMM.LIB")

/*播放音乐*/

void playMusic()

{

//aiyo.wav是放在代码文件中

PlaySound(TEXT("aiyo.wav"),0,SND_FILENAME | SND_ASYNC);

}

/**

 * 主  函  数(音乐放第一排)

 */

void main()

{

playMusic();

title();            //欢迎界面上的标题

flower();           //打印字符画

welcome();          //欢迎界面上的选项菜单

}

扩展资料

C语言解析WAV音频文件:

C语言基本的二进制文件操作函数有fopen,fread等等。(注意是二进制文件操作函数,所以我们不讨论fgets,这是普通的文本文件操作函数)

fread是一个函数。从一个文件流中读数据,最多读取count个项,每个项size个字节,如果调用成功返回实际读取到的项个数(小于或等于count),如果不成功或读到文件末尾返回 0。

它的函数原型为

size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;

而且C语言还有一种类型叫做结构体,它在内存中是顺序存储的。刚好我们也已经得知了WAV文件在文件中的顺序以及该顺序中每个部分对应的含义。

那么我们可以事先根据前面所说的WAV文件结构来定义好一个struct,然后在main主函数中初始化这个struct,并且通过fread的第一个参数带入初始化好的这个struct,那么执行之后就会自动读取该文件,并且按照顺序自动把这些元数据填充进了我们初始化好的struct中。

匿名用户
2012-06-04
展开全部
turboc 可以把音乐播放函数在时钟中断里调用
播放音乐嘛,就是用sound() 函数发声,delay()函数指定时间长度,nosound()取消发声
可以把乐谱放入数组
基本就是这样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
武荆轲
推荐于2017-11-25 · TA获得超过1026个赞
知道小有建树答主
回答量:648
采纳率:0%
帮助的人:293万
展开全部
给你一个例子:可以再vc++6.0中执行,其他编译器不清楚

#include <windows.h>
#include <stdlib.h>
#pragma comment(lib,"winmm.lib")
int main()
{
puts("播放声音...");
PlaySound ("1.wav",NULL,SND_FILENAME | SND_ASYNC);

puts("按任意键退出!");
system("pause>nul") ;
}

注意。。。音乐文件格式必须是.wav的,播放声音不会停止代码的执行

如果你要在声音播放完之后在继续执行代码,而不是一边播放一边执行的话,请把SND_ASYNC改成SND_SYNC
追问
如果要循环播放这首歌,要怎么设置啊
追答
那就把 SND_FILENAME | SND_ASYNC 改为 SND_FILENAME | SND_ASYNC | SND_LOOP 就可以了

你自己看标志的说明:组合方式就像上面的一样,用 | 组合

● SND_APPLICATION
  用应用程序指定的关联来播放声音。
  ● SND_ALIAS
  pszSound参数指定了注册表或WIN.INI中的系统事件的别名。
  ● SND_ALIAS_ID
  pszSound参数指定了预定义的声音标识符。
  ● SND_ASYNC
  用异步方式播放声音,PlaySound函数在开始播放后立即返回。
  ● SND_FILENAME
  pszSound参数指定了WAVE文件名。
  ● SND_LOOP
  重复播放声音,必须与SND_ASYNC标志一块使用。
  ● SND_MEMORY
  播放载入到内存中的声音,此时pszSound是指向声音数据的指针。
  ● SND_NODEFAULT
  不播放缺省声音,若无此标志,则PlaySound在没找到声音时会播放缺省声音。
  ● SND_NOSTOP
  PlaySound不打断原来的声音播出并立即返回FALSE。
  ● SND_NOWAIT
  如果驱动程序正忙则函数就不播放声音并立即返回。
  ● SND_PURGE
  停止所有与调用任务有关的声音。若参数pszSound为NULL,就停止所有的声音,否则,停止pszSound指定的声音。
  ● SND_RESOURCE
  pszSound参数是WAVE资源的标识符,这时要用到hmod参数。
  ● SND_SYNC
  同步播放声音,在播放完后PlaySound函数才返回。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式