首页 > 代码库 > B.xml
B.xml
函数名:?bar?
功??能:?画一个二维条形图?
用??法:?void?far?bar(int?left,?int?top,?int?right,?int?bottom);?
程序例:?
#include?<graphics.h>? #include?<stdlib.h>? #include?<stdio.h>? #include?<conio.h>? int?main(void)? {? ???/*?request?auto?detection?*/? ???int?gdriver?=?DETECT,?gmode,?errorcode;? ???int?midx,?midy,?i;? ???/*?initialize?graphics?and?local?variables?*/? ???initgraph(&gdriver,?&gmode,?"");? ???/*?read?result?of?initialization?*/? ???errorcode?=?graphresult();? ???if?(errorcode?!=?grOk)??/*?an?error?occurred?*/? ???{? ??????printf("Graphics?error:?%s\n",?grapherrormsg(errorcode));? ??????printf("Press?any?key?to?halt:");? ??????getch();? ??????exit(1);?/*?terminate?with?an?error?code?*/? ???}? ???midx?=?getmaxx()?/?2;? ???midy?=?getmaxy()?/?2;? ???/*?loop?through?the?fill?patterns?*/? ???for?(i=SOLID_FILL;?i<USER_FILL;?i++)? ???{? ??????/*?set?the?fill?style?*/? ??????setfillstyle(i,?getmaxcolor());? ??????/*?draw?the?bar?*/? ??????bar(midx-50,?midy-50,?midx+50,? ?????????midy+50);? ??????getch();? ???}? ???/*?clean?up?*/? ???closegraph();? ???return?0;? }? ?? ?? ??
函数名:?bar3d?
功??能:?画一个三维条形图?
用??法:?void?far?bar3d(int?left,?int?top,?int?right,?int?bottom,?
???????????????????????int?depth,?int?topflag);?
程序例:?
#include?<graphics.h>? #include?<stdlib.h>? #include?<stdio.h>? #include?<conio.h>? int?main(void)? {? ???/*?request?auto?detection?*/? ???int?gdriver?=?DETECT,?gmode,?errorcode;? ???int?midx,?midy,?i;? ???/*?initialize?graphics,?local?variables?*/? ???initgraph(&gdriver,?&gmode,?"");? ???/*?read?result?of?initialization?*/? ???errorcode?=?graphresult();? ???if?(errorcode?!=?grOk)??/*?an?error?occurred?*/? ???{? ??????printf("Graphics?error:?%s\n",?grapherrormsg(errorcode));? ??????printf("Press?any?key?to?halt:");? ??????getch();? ??????exit(1);?/*?terminate?with?error?code?*/? ???}? ???midx?=?getmaxx()?/?2;? ???midy?=?getmaxy()?/?2;? ???/*?loop?through?the?fill?patterns?*/? ???for?(i=EMPTY_FILL;?i<USER_FILL;?i++)? ???{? ??????/*?set?the?fill?style?*/? ??????setfillstyle(i,?getmaxcolor());? ??????/*?draw?the?3-d?bar?*/? ??????bar3d(midx-50,?midy-50,?midx+50,?midy+50,?10,?1);? ??????getch();? ???}? ???/*?clean?up?*/? ???closegraph();? ???return?0;? }? ?? ?? ??
函数名:?bdos?
功??能:?DOS系统调用?
用??法:?int?bdos(int?dosfun,?unsigned?dosdx,?unsigned?dosal);?
程序例:?
#include?<stdio.h>? #include?<dos.h>? /*?Get?current?drive?as?‘A‘,?‘B‘,?...?*/? char?current_drive(void)? {? ???char?curdrive;? ???/*?Get?current?disk?as?0,?1,?...?*/? ???curdrive?=?bdos(0x19,?0,?0);? ???return(‘A‘?+?curdrive);? }? int?main(void)? {? ???printf("The?current?drive?is?%c:\n",?current_drive());? ???return?0;? }? ?? ?? ??
函数名:?bdosptr?
功??能:?DOS系统调用?
用??法:?int?bdosptr(int?dosfun,?void?*argument,?unsigned?dosal);?
程序例:?
#include?<string.h>? #include?<stdio.h>? #include?<dir.h>? #include?<dos.h>? #include?<errno.h>? #include?<stdlib.h>? #define??BUFLEN??80? int?main(void)? {? ???char??buffer[BUFLEN];? ???int???test;? ???printf("Enter?full?pathname?of?a?directory\n");? ???gets(buffer);? ???test?=?bdosptr(0x3B,buffer,0);? ??????if(test)? ??????{? ??printf("DOS?error?message:?%d\n",?errno);? ??/*?See?errno.h?for?error?listings?*/? ??exit?(1);? ??????}? ???getcwd(buffer,?BUFLEN);? ???printf("The?current?directory?is:?%s\n",?buffer);? ???return?0;? }? ?? ?? ??
函数名:?bioscom?
功??能:?串行I/O通信?
用??法:?int?bioscom(int?cmd,?char?abyte,?int?port);?
程序例:?
#include?<bios.h>? #include?<conio.h>? #define?COM1???????0? #define?DATA_READY?0x100? #define?TRUE???????1? #define?FALSE??????0? #define?SETTINGS?(?0x80?|?0x02?|?0x00?|?0x00)? int?main(void)? {? ???int?in,?out,?status,?DONE?=?FALSE;? ???bioscom(0,?SETTINGS,?COM1);? ???cprintf("...?BIOSCOM?[ESC]?to?exit?...\n");? ???while?(!DONE)? ???{? ??????status?=?bioscom(3,?0,?COM1);? ??????if?(status?&?DATA_READY)? ??if?((out?=?bioscom(2,?0,?COM1)?&?0x7F)?!=?0)? ?????putch(out);? ??if?(kbhit())? ??{? ?????if?((in?=?getch())?==?‘\x1B‘)? ????????DONE?=?TRUE;? ?????bioscom(1,?in,?COM1);? ??}? ???}? ???return?0;? }? ?? ?? ??
函数名:?biosdisk?
功??能:?软硬盘I/O?
用??法:?int?biosdisk(int?cmd,?int?drive,?int?head,?int?track,?int?sector?
???????int?nsects,?void?*buffer);?
程序例:?
#include?<bios.h>? #include?<stdio.h>? int?main(void)? {? ???int?result;? ???char?buffer[512];? ???printf("Testing?to?see?if?drive?a:?is?ready\n");? ???result?=?biosdisk(4,0,0,0,0,1,buffer);? ???result?&=?0x02;? ???(result)???(printf("Drive?A:?Ready\n"))?:? ???????(printf("Drive?A:?Not?Ready\n"));? ???return?0;? }? ?? ?? ??
函数名:?biosequip?
功??能:?检查设备?
用??法:?int?biosequip(void);?
程序例:?
#include?<bios.h>? #include?<stdio.h>? int?main(void)? {? ???int?result;? ???char?buffer[512];? ???printf("Testing?to?see?if?drive?a:?is?ready\n");? ???result?=?biosdisk(4,0,0,0,0,1,buffer);? ???result?&=?0x02;? ???(result)???(printf("Drive?A:?Ready\n"))?:? ???????(printf("Drive?A:?Not?Ready\n"));? ???return?0;? }? ?? ?? ??
函数名:?bioskey?
功??能:?直接使用BIOS服务的键盘接口?
用??法:?int?bioskey(int?cmd);?
程序例:?
#include?<stdio.h>? #include?<bios.h>? #include?<ctype.h>? #define?RIGHT??0x01? #define?LEFT???0x02? #define?CTRL???0x04? #define?ALT????0x08? int?main(void)? {? ???int?key,?modifiers;? ???/*?function?1?returns?0?until?a?key?is?pressed?*/? ???while?(bioskey(1)?==?0);? ???/*?function?0?returns?the?key?that?is?waiting?*/? ???key?=?bioskey(0);? ???/*?use?function?2?to?determine?if?shift?keys?were?used?*/? ???modifiers?=?bioskey(2);? ???if?(modifiers)? ???{? ??????printf("[");? ??????if?(modifiers?&?RIGHT)?printf("RIGHT");? ??????if?(modifiers?&?LEFT)??printf("LEFT");? ??????if?(modifiers?&?CTRL)??printf("CTRL");? ??????if?(modifiers?&?ALT)???printf("ALT");? ??????printf("]");? ???}? ???/*?print?out?the?character?read?*/? ???if?(isalnum(key?&?0xFF))? ??????printf("‘%c‘\n",?key);? ???else? ??????printf("%#02x\n",?key);? ???return?0;? }? ?? ??
函数名:?biosmemory?
功??能:?返回存储块大小?
用??法:int?biosmemory(void);?
程序例:?
#include?<stdio.h>? #include?<bios.h>? int?main(void)? {? ???int?memory_size;? ???memory_size?=?biosmemory();??/*?returns?value?up?to?640K?*/? ???printf("RAM?size?=?%dK\n",memory_size);? ???return?0;? }? ?? ?? ??
函数名:?biosprint?
功??能:?直接使用BIOS服务的打印机I/O?
用??法:?int?biosprint(int?cmd,?int?byte,?int?port);?
程序例:?
#include?<stdio.h>? #include?<conio.h>? #include?<bios.h>? int?main(void)? {? ???#define?STATUS??2????/*?printer?status?command?*/? ???#define?PORTNUM?0????/*?port?number?for?LPT1?*/? ???int?status,?abyte=0;? ???printf("Please?turn?off?your?printer.??Press?any?key?to?continue\n");? ???getch();? ???status?=?biosprint(STATUS,?abyte,?PORTNUM);? ???if?(status?&?0x01)? ??????printf("Device?time?out.\n");? ???if?(status?&?0x08)? ??????printf("I/O?error.\n");? ???if?(status?&?0x10)? ??????printf("Selected.\n");? ???if?(status?&?0x20)? ??????printf("Out?of?paper.\n");? ???if?(status?&?0x40)? ??????printf("Acknowledge.\n");? ???if?(status?&?0x80)? ??????printf("Not?busy.\n");? ???return?0;? }? ?? ?? ??
函数名:?biostime?
功??能:?读取或设置BIOS时间?
用??法:?long?biostime(int?cmd,?long?newtime);?
程序例:?
#include?<stdio.h>? #include?<bios.h>? #include?<time.h>? #include?<conio.h>? int?main(void)? {? ???long?bios_time;? ???clrscr();? ???cprintf("The?number?of?clock?ticks?since?midnight?is:\r\n");? ???cprintf("The?number?of?seconds?since?midnight?is:\r\n");? ???cprintf("The?number?of?minutes?since?midnight?is:\r\n");? ???cprintf("The?number?of?hours?since?midnight?is:\r\n");? ???cprintf("\r\nPress?any?key?to?quit:");? ???while(!kbhit())? ???{? ??????bios_time?=?biostime(0,?0L);? ??????gotoxy(50,?1);? ??????cprintf("%lu",?bios_time);? ??????gotoxy(50,?2);? ??????cprintf("%.4f",?bios_time?/?CLK_TCK);? ??????gotoxy(50,?3);? ??????cprintf("%.4f",?bios_time?/?CLK_TCK?/?60);? ??????gotoxy(50,?4);? ??????cprintf("%.4f",?bios_time?/?CLK_TCK?/?3600);? ???}? ???return?0;? }? ?? ?? ??
函数名:?brk?
功??能:?改变数据段空间分配?
用??法:?int?brk(void?*endds);?
程序例:?
#include?<stdio.h>? #include?<alloc.h>? int?main(void)? {? ???char?*ptr;? ???printf("Changing?allocation?with?brk()\n");? ???ptr?=?malloc(1);? ???printf("Before?brk()?call:?%lu?bytes?free\n",?coreleft());? ???brk(ptr+1000);? ???printf("?After?brk()?call:?%lu?bytes?free\n",?coreleft());? ???return?0;? }? ?? ?? ??
函数名:?bsearch?
功??能:?二分法搜索?
用??法:?void?*bsearch(const?void?*key,?const?void?*base,?size_t?*nelem,?
????????size_t?width,?int(*fcmp)(const?void?*,?const?*));?
程序例:?
#include?<stdlib.h>? #include?<stdio.h>? #define?NELEMS(arr)?(sizeof(arr)?/?sizeof(arr[0]))? int?numarray[]?=?{123,?145,?512,?627,?800,?933};? int?numeric?(const?int?*p1,?const?int?*p2)? {? ???return(*p1?-?*p2);? }? int?lookup(int?key)? {? ???int?*itemptr;? ???/*?The?cast?of?(int(*)(const?void?*,const?void*))? ??????is?needed?to?avoid?a?type?mismatch?error?at? ??????compile?time?*/? ???itemptr?=?bsearch?(&key,?numarray,?NELEMS(numarray),? ??????sizeof(int),?(int(*)(const?void?*,const?void?*))numeric);? ???return?(itemptr?!=?NULL);? }? int?main(void)? {? ???if?(lookup(512))? ??????printf("512?is?in?the?table.\n");? ???else? ??????printf("512?isn‘t?in?the?table.\n");? ???return?0;? }? ?? ??
本文使用?书画小说软件?发布,内容与软件无关,书画小说软件?更惬意的读、更舒心的写、更轻松的发布。
B.xml