如何用c++播放音乐?
c++作为每一个OIer的日常伙伴,打久了,不免有些乏味和疲倦
那么,我们是否可以让没有音响的电脑播放音乐呢?
答案是可以的。
Beep( A , B )函数
其中A代表 音调 ,B 代表发声的长短(毫秒)
下面给出一个示范
#include#include #define n1 532 // do 1音#define D 250 //定义 D 为 1拍int main(){ Beep( n1 , D ) ; return 0 ;}
这就是 do 音。是不是很简单呢?
但是我们要注意,Beep() 并不在万能头文件中,而是存在 windows 库中。后面要用的 Sleep() 函数也是如此。
在理解了 Beep() 函数后 , 我们来了解一下 Sleep() 函数。
Sleep( A ) , A表示暂停时间(毫秒)
#include#include #define n1 532 // do 1音#define D 250 //定义 D 为 1拍int main(){ Beep( n1 , D ) ; Sleep( D ); Beep( n1 , D ) ; return 0 ;}
运行后发现 两个 do 音之间有了时间间隔;
了解寄出后,我们可以自定义一些基础乐理的快捷方式,给出基础板子(不用谢,给个赞就行)
#define l1 262#define l2 294#define l3 330#define l4 349#define l5 392#define l6 440#define l7 493#define n1 532#define n2 588#define n3 660#define n4 698#define n5 784#define n6 880#define n7 988#define h1 1046#define h2 1175#define h3 1319#define h4 1397#define h5 1568#define h6 1760#define h7 1976#define A 1600*1.25 //四拍#define B 800*1.25 //两拍#define C 400*1.25 //一拍#define D 200*1.25 //半拍#define E 100*1.25 //1/4拍#define F 50*1.25 //1/8拍#define S(i) Sleep(i)
最后献上由本人(cdqz_ssw)亲自编写的
《恋爱循环》
#include#include //作者 cdqz_ssw #define l1 262#define l2 294#define l3 330#define l4 349#define l5 392#define l6 440#define l7 493#define n1 532#define n2 588#define n3 660#define n4 698#define n5 784#define n6 880#define n7 988#define h1 1046#define h2 1175#define h3 1319#define h4 1397#define h5 1568#define h6 1760#define h7 1976#define A 1600*1.25 //四拍#define B 800*1.25 //两拍#define C 400*1.25 //一拍#define D 200*1.25 //半拍#define E 100*1.25 //1/4拍#define F 50*1.25 //1/8拍#define S(i) Sleep(i)#define wq( i , j ) Beep( i , j )int main(){ wq(n3,D);wq(n4,D);wq(n3,D);wq(n4,D);wq(n5,C);wq(n3,D);wq(n4,D); wq(n3,D);wq(n4,D);wq(n5,C);wq(n5,D);wq(n4,D);wq(n3,D);wq(n4,D); wq(n3,E);wq(n1,D);wq(n1,D);wq(n1,E);wq(l6,D); wq(n3,E);wq(n1,D);wq(n1,D);wq(n1,E);wq(l6,D); wq(n1,E);wq(n1,D);wq(n1,D);wq(n1,E);wq(l6,D);wq(n3,C);S(C); //-----------------------------------------作者 cdqz_ssw ----- //----------C1----D0.5---------------------------------------2 wq(n3,D);wq(n4,D);wq(n3,D);wq(n4,D);wq(n5,C);wq(n3,D);wq(n4,D); wq(n3,D);wq(n4,D);wq(n5,C);wq(n5,D);wq(n4,D);wq(n3,D);wq(n4,D); wq(n3,E);wq(n1,D);wq(n1,D);wq(n1,E);wq(l6,D); wq(n3,E);wq(n1,D);wq(n1,D);wq(n1,E);wq(n2,D); wq(n1,E);wq(n1,D);wq(n1,D);wq(n1,E);wq(n3,D);wq(n3,C);S(C); //-----------------------------------------作者 cdqz_ssw ----- //----------C1----D0.5---------------------------------------3 wq(n5,C);wq(n3,C);wq(n2,C);wq(n3,D);wq(n3,D); wq(n2,D);wq(n1,D);wq(n2,D);wq(n3,B);wq(n3,D); wq(n6,C);wq(n3,C);wq(n2,C);wq(n1,D);wq(n1,D); wq(n1,D);wq(n2,D);wq(n3,D);wq(n2,C);S(C);S(D); //-----------------------------------------作者 cdqz_ssw ----- //----------C1----D0.5---------------------------------------4 wq(n5,C);wq(n3,C);wq(n2,C);wq(n3,D);wq(n3,D); wq(n2,D);wq(n1,D);wq(n2,D);wq(n3,B);wq(n3,D); wq(n6,C);wq(n3,C);wq(n1,C);wq(n3,C); wq(n1,C);S(C);S(C);S(D);wq(n1,E);wq(l5,E); //----------------------------------------作者 cdqz_ssw -----1 //----------C1----D0.5---------------------------------------4 wq(l6,375);wq(l6,375);wq(l5,D);wq(n1,375);wq(n1,E);S(D);wq(n1,E);wq(l5,E); wq(l6,375);wq(l6,375);wq(l5,D);wq(n1,375);wq(n3,E);S(D);wq(n1,E);wq(l5,E); wq(l6,375);wq(l6,D);wq(l6,E);wq(n5,D);wq(n1,375);wq(n1,D);wq(n1,E);wq(n2,D); wq(n1,375);wq(n1,E);S(E);wq(n1,E);wq(l6,D);wq(n3,C);S(D);wq(n1,E);wq(l5,E); wq(l6,375);wq(l6,375);wq(l5,D);wq(n1,375);wq(n1,E);S(D);wq(n1,E);wq(l5,E); wq(l6,375);wq(l6,375);wq(l5,D);wq(n3,375);wq(n1,E);S(D);wq(n1,E);wq(l5,E); wq(l6,375);wq(l6,D);wq(l6,E);wq(n5,D);wq(n1,375);wq(n1,D);wq(n1,E);wq(n2,D); wq(n1,375);wq(n1,D);wq(n3,375);wq(n1,C);S(C);}