网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.C程序设计例解(07).
.C语言程序设计(第6章 指针)01.
.个简单菜单程序.
.Windows编程基础 - 概.
.水滴石穿C语言之C语言的底层操作.
.STL 简介,标准模板库.
.一个简易网络嗅探器的实现.
.C语言入门之预处理.
.Winsocket编程之TCP/IP体系结构.
.References and arrays.
.VC++编程隐藏计算机中的鼠标.
.在Visual C++中如何利用UDL文件来.
.如何编程实现bin文件转化为iso文.
..
.C++ 编程技巧.
.点阵的汉字程序.
.window中进程间如何通信.
.C++中的Singleton类的实现(1).
.用C++访问SQL Server 2000的实例.
.模仿szk的tbf制作工具.

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

发表日期:2008-3-8


[ 发表日期:2002-1-4 9:28:46 ]

函数名: 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;
}










上一篇:socket编程原理 人气:2325
下一篇:Beej的网络socket编程指南 人气:972
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐