C语言库函数 (B类字母)

黄舟
发布: 2016-12-16 09:44:26
原创
1560人浏览过

函数名: bar 
功 能: 画一个二维条形图 
用 法: void far bar(int left, int top, int right, int bottom); 
程序例: 
#include  
#include  
#include  
#include 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
/* 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  
#include  
#include  
#include 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
/* 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  
#include /* 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  

#include  
#include  
#include  
#include  
#include #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  
#include #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  
#include 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  
#include 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  
#include  
#include #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  
#include 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  
#include  
#include 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  
#include  
#include  
#include 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  
#include 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  
#include #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; 

以上就是C语言库函数 (B类字母)的内容,更多相关文章请关注PHP中文网(www.php.cn)!

C语言速学教程(入门到精通)
C语言速学教程(入门到精通)

C语言怎么学习?C语言怎么入门?C语言在哪学?C语言怎么学才快?不用担心,这里为大家提供了C语言速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号