您的位置:广东在线游戏网 > 游戏资讯 > SDL打开声音,如何用函数SDL_OpenAudio()打开...-SDL不使用SDL_mixer怎么才能播放声音? 能

SDL打开声音,如何用函数SDL_OpenAudio()打开...-SDL不使用SDL_mixer怎么才能播放声音? 能

作者:广东在线游戏网日期:

返回目录:游戏资讯


可以从别人的电脑上用U盘拷贝一个过来就OK了


SDL是一个媒体抽象层,把显卡图形、音频、键鼠杆输入等都用统一的接口定义,让使用SDL的源码不须大改动,能在不同操作系统win/linux/bsd/unix/macos上的编译运行。
ffmpeg是对一些影音编解码器、容器格式读写器、效果处理滤镜的整合,提供转换和改动的统一接口。
联系起来,比如用ffmpeg做数据解码,用SDL绘图显示和键鼠操控,就成了一个媒体播放器。

e”conio.h”#include”stdlib.
h”#include”dos.h”#include”time.h”
int a[16+1][30+1];/*数组用e5a48de588b6e79fa5e98193334来存放地雷和数字的
*/多出一个是用来控制边界的
int flag1,flag2;/*长宽调整标志*/
int color_flag=1,lei_number=10,high=8,width=8,face_
flag=1;
struct time1/*调用时间函数*/
{unsigned char ti_min; unsigned char ti_hour; unsigned char
ti_hund; unsigned char ti_sec;}t;
void rect()
{ /*本模块的功能是在C界面上画边框,以增加C的
友好性和可观性*/
int i; textcolor(14); textbackground(color_flag);
clrscr();/*设置字体和背景颜色*/
gotoxy(1,2);putchar(201);/*左上角*/
for(i=1;i<79;i++)
/*直线*/
putchar(187);/*右上角*/
for(i=2;i<23;i++)
/*直线*/
gotoxy(80,24);putchar(188);/*右下角*/
for(i=1;i<79;i++)
/*竖线*/
gotoxy(1,24);putchar(200);/*右上角*/
for(i=2;i<23;i++)
/*竖线*/
gotoxy(30,1);cprintf(“WELCOMETO SAOLEI!”);
gotoxy(28,25);cprintf(“COPYRIGHT---LANGCY--
-2002”);}
void rect_s()
{ int i;/*根据长宽调整标志画边框*/
gotoxy(flag2-1,flag1-1);putchar(218);
gotoxy(flag2+width*2-1,flag1-1);putchar(191);
gotoxy(flag2-1,flag1+high);putchar(192);
gotoxy(flag2+width*2-1,flag1+high);putchar(217);
for(i=flag2;i<flag2+width*2-1;i++)
{gotoxy(i,flag1-1);putchar(196);
gotoxy(i,flag1+high);putchar(196);}
for(i=flag1;i<flag1+high;i++)
{gotoxy(flag2-1,i);putchar(179);
gotoxy(flag2+width*2-1,i);putchar(179);}}
void color()/*颜色选择*/
{ char ch; rect();
gotoxy(25,6);cprintf(”This is the color table!”);
gotoxy(30,8);cprintf(”1-black”); gotoxy(30,9);cprintf(”
2-blue”);
gotoxy(30,10);cprintf(”3-green”); gotoxy(30,11);cprintf
(”4-bluesky”);
gotoxy(30,12);cprintf(”5-red”); gotoxy(30,13);cprintf(”
6-pink”);
gotoxy(30,14); cprintf(”7-yellow”); gotoxy(30,15);
cprintf(”8-gray”);
gotoxy(30,16);cprintf(”ESC-main menu”);
gotoxy(25,18);cprintf(”Please choose the color numble:”);
while(1)
{ch=getch();
switch(ch)
{case’1’: color_flag=0;cprintf(”black!”);break;
case’2’: color_flag=1;cprintf(”blue!”);break;
case’3’: color_flag=2;cprintf(”green!”);break;
case’4’: color_flag=3;cprintf(”bluesky!”);break;
case’5’: color_flag=4;cprintf(”red!”);break;
case’6’: color_flag=5;cprintf(”pink!”);break;
case’7’: color_flag=6;cprintf(”yellow!”);break;
case’8’: color_flag=7;cprintf(”gray!”);break;
case 27: main();break;
case 13: main();break;
default :break;}}}
void size()/*选择大小*/
{ char ch; rect();
gotoxy(25,8);cprintf(”This is the lei_size table!”);
gotoxy(30,10);cprintf(”1--high=8,width=8”); gotoxy
(30,11);cprintf(”2--high=8,width=16”);
gotoxy(30,12);cprintf(”3--high=16,width=16”); go-
toxy(30,13);cprintf(”4--high=16,width=20”);
gotoxy(30,14);cprintf(”5--high=16,width=25”); go-
toxy(30,15);cprintf(”6--high=16,width=30”);
gotoxy(30,16);cprintf(”ESC-main menu”);
gotoxy(25,18);cprintf(”Please choose the lei_numble:”);
while(1)
{ch=getch();
switch(ch)
{ case’1’: high=8;width=8;cprintf(”high=8,width=
8”);break;
case’2’: high=8;width=16;cprintf(”high=8,width=
16”);break;
case’3’: high=16;width=16;cprintf(”high=16,width=
16”);break;
case’4’: high=16;width=20;cprintf(”high=16,width=
20”);break;
case’5’: high=16;width=25;cprintf(”high=16,width=
25”);break;
case’6’: high=16;width=30;cprintf(”high=16,width=
30”);break;
case 27: main();break;
case 13: main();break;
default :break; }}}
void lei_num()/*选择雷的数目*/
{ char ch; rect();
gotoxy(25,8);cprintf(”This is the lei_number table!”);
gotoxy(30,10);cprintf(”1-10”); gotoxy(30,11);cprintf(”
2-20”); gotoxy(30,12);cprintf(”3-40”);
gotoxy(30,13);cprintf(”4-50”); gotoxy(30,14);cprintf(”
5-80”); gotoxy(30,15);cprintf(”6-100”);
gotoxy(30,16);cprintf(”ESC-main menu”);
gotoxy(25,18);cprintf(”Please choose the lei_numble:”);
while(1)
{ch=getch();
switch(ch)
{ case’1’: lei_number=10;cprintf(”10”);break;
case’2’: lei_number=20;cprintf(”20”);break;
case’3’: lei_number=40;cprintf(”40”);break;
case’4’: lei_number=50;cprintf(”50”);break;
case’5’: lei_number=80;cprintf(”80”);break;
case’6’: lei_number=100;cprintf(”100”);break;
case 27: main();break;
case 13: main();break;
default :break; }}}

void face()/*选择图标*/
{ char ch; rect();
gotoxy(25,8);cprintf(”This is the face table!”);
gotoxy(30,10);cprintf(”1--smail face”); gotoxy(30,
11);cprintf(”2--heart”);
gotoxy(30,12);cprintf(”3--rectangle”); gotoxy(30,13);
cprintf(”4--flower”);
gotoxy(30,14);cprintf(”5--peach”); gotoxy(30,15);
cprintf(”6--music”);
gotoxy(30,16);cprintf(”ESC-main menu”);
gotoxy(25,18);cprintf(”Please choose the face:”);
while(1)
{ch=getch();
switch(ch)
{ case’1’:face_flag=1;printf(”smail face!”);break;
case’2’: face_flag=3;printf(”heart!”);break;
case’3’: face_flag=4;printf(”rectangle!”);break;
case’4’: face_flag=5;printf(”flower!”);break;
case’5’: face_flag=6;printf(”peach!”);break;
case’6’: face_flag=14;printf(”music!”);break;
case 27: main();break; case 13: main();break; default :
break;}}}

void fail()/*没有扫成功,重新再来*/
{ int i,j,t3,t4; char ch; flag1=(23-high)/2+2; flag2=
(80-2*width)/2;
for(i=1,t3=flag1;i<high+1;i++,t3++)
for(j=1,t4=flag2;j<width+1;j++,t4+=2)
{ gotoxy(t4,t3); if(a[i][j]==-1) putchar(15); else
printf(”%d”,a[i][j]); }
gotoxy(25,23);printf(”Do you want to continue? <y/n
>”);
ch=getch(); if(ch==’y’||ch==’Y’) saolei(); else
main();}

void succeed()/*扫雷成功,再来否*/
{ char ch; gotoxy(30,22);cprintf(”Congradulation! You
win!”);
gotoxy(25,23);printf(”Do you want to continue? <y/n
>”); ch=getch();
if(ch==’y’||ch==’Y’) saolei(); else main();}

saolei()/*扫雷函数*/
{ int i,j,countlei,left=lei_number,time_flag1,time_flag2;
int t1=1,t2=1,lei_flag=0,t3,t4; char ch; rect();
flag1=(23-high)/2+2; flag2=(80-2*width)/2;
for(i=0;i<high+1;i++)
for(j=0;j<width+1;j++)
a[i][j]=0;/*初始值*/
while(lei_flag<=lei_number)
{ t1=1+random(high);t2=1+random(width);
if(a[t1][t2]! =-1)
}/*随机赋地雷*/
for(i=1;i<high+1;i++)
for(j=1;j<width+1;j++)
{ if(a[i][j]! =-1)
{ countlei=0;/*由于上面已经考虑了边界,这里不需
判断边界*/
if(a[i-1][j-1]==-1) countlei++; if(a[i-1][j]=
=-1) countlei++;
if(a[i-1][j+1]==-1) countlei++;if(a[i][j-1]=
=-1) countlei++;
if(a[i][j+1]==-1) countlei++; if(a[i+1][j-1]=
=-1) countlei++;
if(a[i+1][j]==-1) countlei++; if(a[i+1][j+1]=
=-1) countlei++;
a[i][j]=countlei; } }/*计算各个地区周围的地雷的
数目*/
rect_s();/*画小边框*/
for(i=1,t3=flag1;i<high+1;i++,t3++)
for(j=1,t4=flag2;j<width+1;j++,t4+=2)

gotoxy(4,3);cprintf(”Left:%3d”,left); gotoxy(70,3);
cprintf(”Time:000”);
gettime(&t);/*从系统中取出时间*/
time_flag1=(int)t.ti_min*60+(int)t.ti_sec; i=1;j=1;
while(1)/*键盘操作*/
{ /*72-up,75-left,77-right,80-down,27-esc,13
-enter,32-space*/
gettime(&t);
time_flag2=(int)t.ti_min*60+(int)t.ti_sec-time_
flag1;
gotoxy(68,3);cprintf(”Time:%3d”,time_flag2);
gotoxy(flag2,flag1); ch=getch();
switch(ch) { case 72 : i--;flag1--; if(i<=0) {i+
+;flag1++;} /*判断越界*/
gotoxy(flag2,flag1); break;
case 75 : j--;flag2-=2; if(j<=0) {j++;flag2+=
2;} gotoxy(flag2,flag1); break; case 77 : j++;flag2+=
2;if(j>width) gotoxy(flag2,flag1);
break;
case 80 : i++;flag1++; if(i>high) {i--;flag1-
-;} gotoxy(flag2,flag1); break;
case 32 : if(a[i][j]==-1)
{ putchar(15);left--; if(left==0) succeed();go-
toxy(4,3);cprintf(”Left:%3d”,left);
gotoxy(flag2,flag1); } else fail(); break;
case 13 : if(a[i][j]! =-1)

if(a[i][j]==-1) fail(); break;
case 27 : main();break;
default : break;}}}

main()/*主函数*/
{ char ch; rect();
gotoxy(25,7);printf(”This is the main menu!”);
gotoxy(30,9);printf(”Enter-start!”); gotoxy(30,10);
printf(”1--Choose the color!”);
gotoxy(30,11);printf(”2--Choose the size!”); gotoxy
(30,12);printf(”3--Choose the lei_number!”);
gotoxy(30,13);printf(”4--Choose the face!”); gotoxy
(30,14);printf(”ESC--exit!”);
gotoxy(25,16);printf(”Please select what you want!”);
while(1)
{ch=getch();
switch(ch)
{case’1’: color();break;
case’2’: size();break;
case’3’: lei_num();break;
case’4’: face();break;
case 27: rect();
gotoxy(30,13);
printf(”Thank you ! Good Bye!”);
getch();
exit(0);break;
case 13:
saolei();break;
default :break;}}}
另外,站长团上有产品团购,便宜有保证

相关阅读

关键词不能为空

标签导航

游民星空下的圣域2黄金版免安装的打不开啊 请问下 我买了个《圣域2冰与血》 安装后进入游戏才发现 我在... 圣域2黄金版请懂的大大帮忙解决这个启动游戏问题 圣域2黄金版安装好了运行的时候字体不显示? QQ炫舞心动值怎么加 情侣心动值获得法中 QQ炫舞如何增加心动值? QQ炫舞怎么快速增加心动值呢??? QQ炫舞里1点心动值怎么加? 推荐几个国外好玩的电脑单机游戏 推荐好玩的国外单机游戏 推荐一个国内外单机游戏下载的软件或者网站最好方便点齐全点 国外有还有什么单机游戏下载网站吗? 剑灵传说首饰怎么获得,传说八卦牌怎么获得?我需要所有途径,谢... 剑灵传说首饰怎么获得 剑灵到了50后,该干些什么,还有就是传说八卦牌怎么搞 目前剑灵中,往八卦牌上打八卦牌有什么要求?可以在传说八卦牌上... 城堡争霸6级天赋石怎么用 天赋石使用解析 城堡争霸提升至6级天赋材料怎么用 有个不懂的地方.城堡争霸级.减速这个东西有什么 城堡争霸六级天赋符石要几棵才能使用 犬冢牙的角色经历 火影:旗木卡卡西的狗帕克会说话,而牙的赤丸只会汪汪汪叫,为什... 《火影忍者》里赤丸是什么品种的狗? 犬冢牙为什么长得那么帅 sdl_mixer.dll是什么??? 关于SDL和C语言,都说SDL是用C编写的,在c程序中可以调... 如何用函数SDL_OpenAudio()打开... ubuntu 下SDL 声音无法播放,我的电脑能正常听哥的... SDL打开声音 梦幻西游25剧情为什么我找虾兵没反应 梦幻剧情玄奘身世要买什么东西? 梦幻玄奘的身世剧情杀虾兵死了杂办? 梦幻西游玄奘的身世剧情怎么过 有没有什么好的游戏,又可以玩,又可以赚钱的? 有没有可以赚钱的游戏,最好是一些单机游戏 dnf剑魔剑豪剑宗从pk刷图两面看谁厉害一点,可以充点钱,准... dnf现在刷图剑宗和剑豪哪个适合平民 注意是平民!! dnf剑宗和剑豪哪个是适合平民的刷图职业? DNF剑宗和剑豪哪个适合平民玩家 求QQ炫舞中新出的比较帅气、可爱的宠物截图、 包括以前出的夜... 谁能把QQ炫舞所有珍贵宠物的单张图片给我? QQ炫舞宠物效果图 qq炫舞这3个蛋是那3个宠物,求图片 最近比较火的手机小游戏有哪些呢? 最近有什么热门的小游戏 现在有哪些热门的游戏? 目前最热门的游戏有哪些? cs1.6中怎样用命令调准心大小 CS1.6中AUG好呢?还是SG552好呢(从各方面讲) 请问各位高手:cs1.6 的小准星怎么调??? 为什么cs1.6 aug和sg552的微瞄没有了准星 原来有... 求一个质量效应2女薛帕德完美存档,凯登幸存,救下议会,保留梅... 女神,同求一个质量效应2女薛帕德完美存档 求一个质量效应2女薛帕德楷模满完美存档,队友全忠诚并且存活,...