
正文
c语言中beep函数用法 c语言中begin
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
c语言中,beep是个什么函数?
是发声函数,运行后通过主板喇叭唱出旋律,可以试试下面:
TC 试:
#includedos.h
#includeconio.h
#includestdlib.h
/* this founction plays sound until hit any key */
void mysound()
{
long freq ;
while(!kbhit()){/* while no keyboard hit, play sound */
for(freq=200L;freq2000L;freq+=200L){
sound(freq);/*play freq sound*/
delay(200);/*delay 200ms*/
}
}
nosound();/* stop playing */
}
void main()
{
mysound() ;
}
---------------
VC++ 试:
#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);
Sleep(500);
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
}
------
wintc 试验上两个。
相关问答
Q1: 如何在linux中用c语言使用函数beep
#include unistd.h // 头文件
int usleep(useconds_t usec); // 函数原型
usec -- 毫秒。整数。最大允许值:小于 1000000
返回 0 -- 表示调用执行成功,1 -- 失败。
Q2: c语言中,beep是个什么函数
是发声函数,运行后通过主板喇叭唱出旋律,可以试试下面:
TC 试:
#includedos.h
#includeconio.h
#includestdlib.h
/* this founction plays sound until hit any key */
void mysound()
{
long freq ;
while(!kbhit()){/* while no keyboard hit, play sound */
for(freq=200L;freq2000L;freq+=200L){
sound(freq);/*play freq sound*/
delay(200);/*delay 200ms*/
}
}
nosound();/* stop playing */
}
void main()
{
mysound() ;
}
---------------
VC++ 试:
#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);
Sleep(500);
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
}
------
wintc 试验上两个。
Q3: 如何简单的输出不同频率的声音,C语言行吗?
用 Beep 函数,参数1是频率,参数2是时间长度。
下面唱 多来米发少啦西多......
MS VC++ 6.0 编译器
#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);
}
Q4: Beep(int ,int )怎么用?两个参数的用途分别是什么?
BOOL
Beep(
DWORD
dwFreq,
//
Beep声音频率,单位Hz
DWORD
dwDuration
//
Beep声音持续时间,单位毫秒
);
程序示例c语言中beep函数用法:
#include
windows.h
int
main
(
void
)
{
int
i
=
2
;
while
(
i--
)
{
//Beep函数c语言中beep函数用法,使扬声器发出简单声音
//要调用这个函数需要加上头文件windows.h
//在Visual
C++
6.0下运行通过
Beep(1000,500);
}
return
0;
}
Beep是同步播放的c语言中beep函数用法,即播放完毕后返回,c语言中beep函数用法我都使用线程达到异步播放。
Q5: beep函数的问题!
只要你有乐谱。根据乐理,就可以走在调上。比如:
你可以写一个文件,存储你自己的声音格式:
struct tagSound
{
int frequency; //频率
int soundDelay; //发音时间(单位ms)
int nosoundDelay; //发完音之后暂停的时间(单位ms)
};
1。音符与频率的关系
========低音部分
低1DO:262
#1DO#:277
低2RE:294
#2RE#:311
低3MI:330
低4FA:349
#4FA#:370
低5SO:392
#5SO#:415
低6LA:440
#6LA#:466
低7SI:494
========中音部分=低音X2
中1DO:523 956us FC44;
#1DO#:554 902us
中2RE:578 865us FC9F;
#2RE#:622 803us
中3MI:659 759us FD09;
中4FA:698 716us FD34
#4FA#:740
中5SO:784 638us FD82
#5SO#:831
中6LA:880 568us FDC8
#6LA#:932
中7SI:988 506us FE06
========高音部分=中音X2
高1DO:1046
#1DO#:1109
高2RE:1175
#2RE#:1245
高3MI:1318
高4FA:1480
#4FA#:1480
高5SO:1568
#5SO#:1661
高6LA:1760
#6LA#:1865
高7SI:1976
“#”表示半音,用于上升或下降半个音
2。频率的产生
利用定时器来控制IO口的高低变化实现
周期=1/频率
半周期中断产生IO口电平
定时时间常数按照单片机的方式计算
3。音乐节拍的产生
每个音符用1个字节,字节的高4位代表音符的高低,低4位代表
音符的节拍,如果 1节拍是0.4秒,则1/4拍就是0.1秒。
其他节拍为1/4拍的整数倍。
4。节拍与节拍码对照表
节拍 节拍数 节拍数
1 1/4 1/8
2 2/4 2/8
3 3/4 3/8
4 1 1/2
5 5/4 5/8
6 6/4 6/8
8 2 1
A 10/4 5/4
C 3 12/8
F 15/4
曲调 1/4拍的延迟时间 1/8拍的延迟时间
4/4 125ms 62ms
3/4 187ms 94ms
2/4 250ms 125ms
不过,真的好不准。
这样就可以编辑文件了。
送你一个函数:
void MyDelay(long tt) /*暂停tt个百分之一秒*/
{
struct time now,last;
gettime(last);
gettime(now);
while((((now.ti_sec-last.ti_sec)*100+now.ti_hund-last.ti_hund))tt)
{
gettime(now);
}
}
这个函数可以暂停 0.01*tt 秒。
循环使用下面的句子:
Beep(frequency,soundDelay);
MyDelay(nosoundDelay/10);
就可以模拟那个音乐了。
在C语言里可以循环使用:
sound(frequency);
MyDelay(soundDelay/10);
nosound();
MyDelay(nosoundDelay/10);
就可以了
c语言中beep函数用法的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言中begin、c语言中beep函数用法的信息别忘了在本站进行查找喔。







