0

我正在制作游戏,我必须添加一些音效和音乐。

我用谷歌搜索了它,我发现了流动的代码:

#include <conio.h>
#include "inc/fmod.h"

FSOUND_SAMPLE* handle;

int main ()
{
   // init FMOD sound system
   FSOUND_Init (44100, 32, 0);

   // load and play mp3
   handle=FSOUND_Sample_Load (0,"my.mp3",0, 0, 0);
   FSOUND_PlaySound (0,handle);

   // wait until the users hits a key to end the app
   while (!_kbhit())
   {
   }

   // clean up
   FSOUND_Sample_Free (handle);
   FSOUND_Close();
}

但是当我编译它时,我得到了流动的错误:

➜  Desktop gcc main.c
main.c:1:10: fatal error: 'conio.h' file not found
#include <conio.h>
         ^~~~~~~~~
1 error generated.
4

1 回答 1

-1

嗯,首先 <conio.h> 是一个 C++ 库,而您正在使用 C 进行编程。这是不同的!然后,我记得我几年前写的一个C代码,main.c有如下代码(注释是意大利语,因为我是意大利人):

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include "header.h"
int main(){
register unsigned char x='2';
printf("digitare tasti:\n");
while(1){
while(1){
if(x=='2'){/*blocco2*/ while(x!='1' && x!='3'){x=getch(); scala2(x);}}
if(x=='1'){/*blocco1*/ while(x!='2' && x!='3'){x=getch(); scala1(x);}}
if(x=='3'){/*blocco3*/ while(x!='1' && x!='2'){x=getch(); scala3(x);}}
}
}
system("PAUSE");
return 0;
}

然后,这是另一个名为file.c的源文件:

 #include <stdio.h>
 #include <stdlib.h>
 #include <windows.h>
 #include "header.h"
 void scala1(unsigned char x){
 if(x=='a')beep(131,50);
 if(x=='s')beep(147,50);
 if(x=='d')beep(165,50);
 if(x=='f')beep(175,50);
 if(x=='g')beep(196,50);
 if(x=='h')beep(220,50);
 if(x=='j')beep(247,50);
 if(x=='k')beep(262,50);
 if(x=='l')beep(294,50);
 if(x=='w')beep(139,50);
 if(x=='e')beep(156,50);
 if(x=='r')beep(185,50);
 if(x=='t')beep(208,50);
 if(x=='y')beep(233,50);    
 }
 void scala2(unsigned char x){
 if(x=='a')beep(262,50);
 if(x=='s')beep(294,50);
 if(x=='d')beep(330,50);
 if(x=='f')beep(349,50);
 if(x=='g')beep(392,50);
 if(x=='h')beep(440,50);
 if(x=='j')beep(494,50);
 if(x=='k')beep(523,50);
 if(x=='l')beep(587,50);
 if(x=='w')beep(277,50);
 if(x=='e')beep(311,50);
 if(x=='r')beep(370,50);
 if(x=='t')beep(415,50);
 if(x=='y')beep(466,50); 
 }
 void scala3(unsigned char x){
 if(x=='a')beep(523,50);
 if(x=='s')beep(587,50);
 if(x=='d')beep(659,50);
 if(x=='f')beep(698,50);
 if(x=='g')beep(784,50);
 if(x=='h')beep(880,50);
 if(x=='j')beep(988,50);
 if(x=='k')beep(1046,50);
 if(x=='l')beep(1175,50);
 if(x=='w')beep(554,50);
 if(x=='e')beep(622,50);
 if(x=='r')beep(740,50);
 if(x=='t')beep(831,50);
 if(x=='y')beep(932,50);  
 }

最后一个,文件header.h。它的代码如下:

void scala1(unsigned char x);
void scala2(unsigned char x);
void scala3(unsigned char x);

所有源文件必须位于同一目录中。你编译 main.c 然后,你只需要按 a,s,d,..y 和 1,2,3。尝试!它可以工作,当然如果你想更改部分代码,你可以做到。我希望你喜欢我的节目,这很有趣:)

于 2020-10-26T14:07:41.953 回答