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

2016-02-19 21:35 2 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;
  }
  
  
  
  
  
  
  
  
  
  

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

延伸阅读
在没有讲述本章内容之前假如我们想要在一个范围内共享某一个数据,那么我们会设立全局对象,但面向对象的程序是由对象构成的,我们如何才能在类范围内共享数据呢? 这个问题便是本章的重点: !-- frame contents -- !-- /frame contents -- 声明为static的类成员或者成员函数便能在类的范围内共同享,我们...
C++类对象的拷贝构造函数 作者:韩耀旭 对于普通类型的对象来说,它们之间的复制是很简单的,例如: int a=100;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。 #include <iostreamusing namespace std;class CA{public:CA(int b){a=b;}void Show (){c...
在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子...
在学习这一章内容前我们已经学习过了类的构造函数和析构函数的相关知识,对于普通类型的对象来说,他们之间的复制是很简单的,例如: int a = 10; int b =a; !-- frame contents -- !-- /frame contents -- 自己定义的类的对象同样是对象,谁也不能阻止我们用以下的方式进行复制,例如:#include iostream&n...
(1) int mysql_affected_rows([int link_id]); 在给定的连接中,返回由最近的DELETE、INSERT、REPLACE或者UPDATE语句所作用的行数。如果没有行 被修改,则mysql_affected_rows()返回0,如果出现错误,则返回-1。 在SELECT查询之后,mysql_affected_rows()返回所选择的行数。但一般是与SELECT语句一道使用。 (2) int mysql_close(i...

经验教程

360

收藏

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