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, gmodeerrorcode; 
   int midxmidyi; 
   /* 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-50midy-50midx+50, 
         midy+50); 
      getch(); 
   } 
   /* clean up */ 
   closegraph(); 
   return 0} 
  
  
  

函数名: bar3d 

功  能: 画一个三维条形图 

用  法: void far bar3d(int left, int top, int right, int bottom, 

                       int depthint topflag)

程序例: 

#include <graphics.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <conio.h> 
int main(void) 
{ 
   /* request auto detection */ 
   int gdriver = DETECT, gmodeerrorcode; 
   int midxmidyi; 
   /* initialize graphicslocal 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-50midy-50midx+50midy+50101); 
      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 01, ... */ 
   curdrive = bdos(0x19, 00); 
   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(30, COM1); 
      if (status & DATA_READY) 
  if ((out = bioscom(20, COM1) & 0x7F) != 0) 
     putch(out); 
  if (kbhit()) 
  { 
     if ((in = getch()) == '\x1B') 
        DONE = TRUE; 
     bioscom(1in, COM1); 
  } 
   } 
   return 0} 
  
  
  

函数名: biosdisk 

功  能: 软硬盘I/O 

用  法: int biosdisk(int cmd, int drive, int head, int track, int sector 

       int nsectsvoid *buffer)

程序例: 

#include <bios.h> 
#include <stdio.h> 
int main(void) 
{ 
   int result; 
   char buffer[512]; 
   printf("Testing to see if drive ais ready\n"); 
   result = biosdisk(4,0,0,0,0,1,buffer); 
   result &= 0x02; 
   (result) ? (printf("Drive A: Ready\n")) : 
       (printf("Drive ANot 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 ais ready\n"); 
   result = biosdisk(4,0,0,0,0,1,buffer); 
   result &= 0x02; 
   (result) ? (printf("Drive A: Ready\n")) : 
       (printf("Drive ANot 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(501); 
      cprintf("%lu", bios_time); 
      gotoxy(502); 
      cprintf("%.4f", bios_time / CLK_TCK); 
      gotoxy(503); 
      cprintf("%.4f", bios_time / CLK_TCK / 60); 
      gotoxy(504); 
      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[] = {123145512627800933}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} 
  
  

本文使用 书画小说软件 发布,内容与软件无关,书画小说软件 更惬意的读、更舒心的写、更轻松的发布。

 

你可能感兴趣的:(xml)