‘壹’ c语言声音文件播放
用C语言播放音乐,一般需要额外的库或者调用系统的API函数。
以Windows为例,可以通过PlaySound函数播放wav格式的音乐。示例如下,代码在vc6.0中编译通过。
#include<stdio.h>
#include<windows.h>
#include<mmsystem.h>
#pragmacomment(lib,"WINMM.LIB")
intmain()
{
PlaySound(TEXT("1.wav"),0,SND_FILENAME);//1.wav是要播放的音乐文件
return0;
}
如果想播放mp3音乐可以使用如下代码。
注意:生成程序后,请在cmd中执行此程序,不要在vc/vs的IDE中运行。
#include<windows.h>
#include<mmsystem.h>
#include<stdio.h>
#pragmacomment(lib,"Winmm.lib")
intmain(intargc,char*argv[])
{
//绝对地址形式
TCHARfileName[]="ganlusi.mp3";
TCHARshortName[MAX_PATH];
GetShortPathName(fileName,shortName,sizeof(shortName)/sizeof(TCHAR));
TCHARcmd[MAX_PATH+10];
wsprintf(cmd,"play%s",shortName);
mciSendString(cmd,NULL,0,NULL);
Sleep(5*60*1000);//这里是防止一播放就结束做的延迟
return0;
}
‘贰’ 在VC 里如何用c语言编程发出声音 跪求。。
找本书看看声音编程吧,最好的办法是API了,要做高级编程不会API就要摸瞎了
‘叁’ 如何用C语言编一个发出声音的程序
这个唱 多来米法少
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
main()
{
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
Beep(880,500);
Beep(980,500);
Beep(1060,500);
Sleep(500);
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
}
‘肆’ c语言让喇叭发出叮的声音
#include
voidmain(void)
{
unsignedFREQUENCY[]={392,392,440,392,523,494,
392,392,440,392,587,523,
392,392,784,659,523,494,
440,698,698,659,523,587,523};
unsignedDELAY[]={375,125,500,500,500,1000,
375,125,500,500,500,1000,
375,125,500,500,500,1000,
375,125,500,500,500,1000};
intCIRCLE;
for(CIRCLE=0;CIRCLE<25;CIRCLE++)
{
sound(FREQUENCY[CIRCLE]);
delay(DELAY[CIRCLE]);
nosound();
}
}
win2k,tc3.0
‘伍’ c语言怎么实现动作和声音同时输出
有2种方法
一种就是你写个函数,能将多组声音数据压缩组合成一组数据。
另一种方法就是像操作系统处理,多个声音数据见不断切换处理
‘陆’ 用C语言编写程序输出方波信号到单片机,连接扬声器从而产生不同简单的音效
看看芯片有没有支持蜂鸣器接口,有的话,直接改变寄存器就可以了
不同的音效,就是改变频率,改变频率,就是改变时间。
输出脚,就用I/O口。
程序内设计一个时间中断,如40us中断或更短。定义一个int或long的时间计数器
把这个计数器放在中断内,计数器递减,为0时翻转I/O,并且重置计数器
只要将想要输出的频率(时间),当成计数器的重置值,就可以很容易改变计数器,输出不同
音效。
‘柒’ c语言调用声音的函数
两个声音函数sound(),nosound()和延迟函数delay()由函数库
提供。
函数名:
sound
功
能:
以指定频率打开PC扬声器
用
法:
void
sound(unsigned
frequency);
程序例:
#include
int
main(void)
{
sound(7);
delay(10000);
nosound();
return
0;
}
‘捌’ c语言中让电脑发出声音的是什么
这个函数是直接操作PC的喇叭,让其以一定的频率发出声音
参数为频率,可以这样用 sound(100);
改变参数大小可以发出不同的音
C语言中的这个函数是不能用来播放指定的音频文件的,如果需要,可以调用系统API函数。
‘玖’ 如何用C语言播放一段音频呢
可以使用PlaySound()函数播放wav声音,该函数原型位于windows.h中,
函数原型为:
BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound);
参数pszSound是指定了要播放声音的字符串,该参数可以是WAVE文件的名字,或是WAV资源的名字,或是内存中声音数据的指针,或是在系统注册表WIN.INI中定义的系统事件声音。如果该参数为NULL则停止正在播放的声音。
参数hmod是应用程序的实例句柄,当播放WAV资源时要用到该参数,否则它必须为NULL。
参数fdwSound是标志的组合,各种可选的标志及意义如下所示。若成功则函数返回TRUE,否则返回FALSE。
播放标志以及含义:
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函数才返回。
************************************************************
例如我想播放在C:\WINDOWS\Media目录中的 Windows XP 启动.wav 文件
程序如下:
#include <windows.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
PlaySound("C:\\WINDOWS\\Media\\Windows XP 启动.wav", NULL, SND_FILENAME | SND_ASYNC);
system("pause");
return 0;
}