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

2016-02-19 21:35 5 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的C语言库函数 (B类字母)教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 编程语言 】

[ 发表日期: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", 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; iUSER_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", 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; iUSER_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:", 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");
  gets(buffer); test = bdosptr(0x3B,buffer,0);
  if(test)
  {
  printf("DOS error message: %d", errno);
  /* See errno.h for error listings */
  exit (1);
  } getcwd(buffer, BUFLEN);
  printf("The current directory is: %s", 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 ...");
  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");
  result = biosdisk(4,0,0,0,0,1,buffer);
  result &= 0x02;
  (result) ? (printf("Drive A: Ready")) :
  (printf("Drive A: Not Ready")); 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");
  result = biosdisk(4,0,0,0,0,1,buffer);
  result &= 0x02;
  (result) ? (printf("Drive A: Ready")) :
  (printf("Drive A: Not Ready")); 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'", key);
  else
  printf("%#02x", 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",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");
  getch();
  status = biosprint(STATUS, abyte, PORTNUM);
  if (status & 0x01)
  printf("Device time out.");
  if (status & 0x08)
  printf("I/O error."); if (status & 0x10)
  printf("Selected.");
  if (status & 0x20)
  printf("Out of paper."); if (status & 0x40)
  printf("Acknowledge.");
  if (status & 0x80)
  printf("Not busy."); 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:");
  cprintf("The number of seconds since midnight is:");
  cprintf("The number of minutes since midnight is:");
  cprintf("The number of hours since midnight is:");
  cprintf("Press 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()");
  ptr = malloc(1);
  printf("Before brk() call: %lu bytes free", coreleft());
  
   brk(ptr+1000);
  printf(" After brk() call: %lu bytes free", 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.");
  else
  printf("512 isn't in the table."); return 0;
  }
  
  
  
  
  
  
  
  
  
  

来源:http://www.tulaoshi.com/n/20160219/1626595.html

延伸阅读
基于对象的程序设计的好处大家应该都有一定的体会,但是在 C 语言中并不支持类的概念,不过我们可以通过 strUCt 实现一些基础的类对象,如队列、堆栈等。通过对象的实现可以在一定程度上提高编程效率、简化 C程序设计。下面使用一个例子来介绍下如何在实现一个简单的类,希望对大家有些益处: /* 应用消息队列类 */ struct Ap...
C++类对象的拷贝构造函数 作者:韩耀旭 对于普通类型的对象来说,它们之间的复制是很简单的,例如: int a=100;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。 #include <iostreamusing namespace std;class CA{public:CA(int b){a=b;}void Show (){c...
在没有讲述本章内容之前假如我们想要在一个范围内共享某一个数据,那么我们会设立全局对象,但面向对象的程序是由对象构成的,我们如何才能在类范围内共享数据呢? 这个问题便是本章的重点: !-- frame contents -- !-- /frame contents -- 声明为static的类成员或者成员函数便能在类的范围内共同享,我们...
在学习这一章内容前我们已经学习过了类的构造函数和析构函数的相关知识,对于普通类型的对象来说,他们之间的复制是很简单的,例如: int a = 10; int b =a; !-- frame contents -- !-- /frame contents -- 自己定义的类的对象同样是对象,谁也不能阻止我们用以下的方式进行复制,例如:#include iostream&n...
本函数库供存取 MySQL 数据库。有关 MySQL 的细节,及下载 MySQL 数据库,请到这个网址 http://www.mysql.com 。而网络上也有许多提供处理 MySQL 的用户界面程序,建议到 http://www.phpwizard.net/phpMyAdmin 下载 phpMyAdmin,可以使用浏览器操作及管理 MySQL。整套&n...

经验教程

882

收藏

58
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部