⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 turbo c 2.0、borland c++库函数及用例.01

📁 经典C教程,带所有ANSI C的库函数说明及例子
💻 01
📖 第 1 页 / 共 5 页
字号:
Turbo C 2.0、Borland C++库函数及用例

字母A开头函数
函数名: abort
功  能: 异常终止一个进程
用  法: void abort(void);
程序例:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
  printf("Calling abort()\n");
  abort();
  return 0; /* This is never reached */
}
函数名: abs
功  能: 求整数的绝对值
用  法: int abs(int i);
程序例:
#include <stdio.h>
#include <math.h>int main(void)
{
 int number = -1234; printf("number:%d absolute value:%d\n",number,abs(number));
 return 0;
}
函数名: absread
功  能: 绝对磁盘扇区读数据
用  法: int absread( int drive, int nsects, int sectno,
		     void *buffer );
程序例:
/* absread example */
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <dos.h>int main(void)
{
  int i, strt, ch_out, sector;
  char buf[512];  printf("Insert diskette into drive A press any key\n");
  getch();
  sector = 0;
  if (absread(0, 1, sector, &buf) != 0)
  {  perror("Disk problem");
     exit(1);  }
  printf("Read OK\n");
  strt = 3;
  for (i=0; i<80; i++)
  {  ch_out = buf[strt+i];
     putchar(ch_out);  }
  printf("\n");
  return(0); }
函数名: abswrite
功  能: 绝对磁盘扇区写数据
用  法: int abswrite( int drive, int nsects, in tsectno,
		      void *buffer);
程序例:
/* abswrite example */
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <dos.h>int main(void)
{ int i, strt, ch_out, sector;
  char buf[512];  printf("Insert diskette into drive A press any key\n");
  getch();
  sector = 0;
  if (absread(0, 1, sector, &buf) != 0)
  {  perror("Disk problem");
     exit(1);  }
  printf("Read OK\n");
  strt = 3;
  for (i=0; i<80; i++)
  {  ch_out = buf[strt+i];
     putchar(ch_out);  }
  printf("\n");
  return(0);}
函数名: access
功  能: 确定文件的访问权限
用  法: int access(const char *filename, int amode);
程序例:
#include <stdio.h>
#include <io.h>int file_exists(char *filename);
int main(void)
{ printf("Does NOTEXIST.FIL exist: %s\n",
       file_exists("NOTEXISTS.FIL") ? "YES" : "NO");
  return 0;
}int file_exists(char *filename)
{
  return (access(filename, 0) == 0);
}
函数名: acos
功  能: 反余弦函数
用  法: double acos(double x);
程序例:
#include <stdio.h>
#include <math.h>int main(void)
{ double result;
  double x = 0.5;
  result = acos(x);
  printf("The arc cosine of %lf is %lf\n", x, result);
  return 0;}
函数名: allocmem
功  能: 分配DOS存储段
用  法: int allocmem(unsigned size, unsigned *seg);
程序例:
#include <dos.h>
#include <alloc.h>
#include <stdio.h>int main(void)
{
  unsigned int size, segp;
  int stat;
  size = 64; /* (64 x 16) = 1024 bytes */
  stat = allocmem(size, &segp);  if (stat == -1)
     printf("Allocated memory at segment: %x\n", segp);
  else
     printf("Failed: maximum number of paragraphs available\
	     is %u\n", stat);
  return 0;
}
函数名: arc
功  能: 画一弧线
用  法: void far arc( int x,int y,int stangle,int endangle,
		      int radius );
程序例:
#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;   int stangle = 45, endangle = 135;
   int radius = 100;
   /* initialize graphics and local variables */
   initgraph(&gdriver, &gmode, "");   /* read result of initialization */
   errorcode = graphresult();    /* an error occurred */
   if (errorcode != grOk)
   {
      printf("Graph err: %s\n", grapherrormsg(errorcode));
      printf("Press any key to halt:");
      getch();
      exit(1);    /* terminate with an error code */
   }   midx = getmaxx() / 2;
   midy = getmaxy() / 2;
   setcolor(getmaxcolor());   /* draw arc */
   arc(midx, midy, stangle, endangle, radius);   /* clean up */
   getch();
   closegraph();
   return 0;
}
函数名: asctime
功  能: 转换日期和时间为ASCII码
用  法: char *asctime(const struct tm *tblock);
程序例:
#include <stdio.h>
#include <string.h>
#include <time.h>int main(void)
{
   struct tm t;
   char str[80];   /* sample loading of tm structure  */
   t.tm_sec    = 1;  /* Seconds */
   t.tm_min    = 30; /* Minutes */
   t.tm_hour   = 9;  /* Hour */
   t.tm_mday   = 22; /* Day of the Month  */
   t.tm_mon    = 11; /* Month */
   t.tm_year   = 56; /* Year - does not include century */
   t.tm_wday   = 4;  /* Day of the week  */
   t.tm_yday   = 0;  /* Does not show in asctime  */
   t.tm_isdst  = 0;
   /* Is Daylight SavTime; does not show in asctime */
   /* converts structure to null terminated
   string */   strcpy(str, asctime(&t));
   printf("%s\n", str);
   return 0;
}
函数名: asin
功  能: 反正弦函数
用  法: double asin(double x);
程序例:
#include <stdio.h>
#include <math.h>int main(void)
{  double result;
   double x = 0.5;
   result = asin(x);
   printf("The arc sin of %lf is %lf\n", x, result);
   return(0);
}
函数名: assert
功  能: 测试一个条件并可能使程序终止
用  法: void assert(int test);
程序例:
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>struct ITEM {
   int key;
   int value;
};/* add item to list, make sure list is not null */
void additem(struct ITEM *itemptr) {
   assert(itemptr != NULL);
}int main(void)
{
   additem(NULL);
   return 0;
}
函数名: atan
功  能: 反正切函数
用  法: double atan(double x);
程序例:
#include <stdio.h>
#include <math.h>
int main(void)
{  double result;
   double x = 0.5;
   result = atan(x);
   printf("The arc tangent of %lf is %lf\n", x, result);
   return(0);
}
函数名: atan2
功  能: 计算Y/X的反正切值
用  法: double atan2(double y, double x);
程序例:
#include <stdio.h>
#include <math.h>int main(void)
{  double result;
   double x = 90.0, y = 45.0;
   result = atan2(y, x);
   printf("The arc tangent ratio of %lf is %lf\n\
	  ", (y/x),result);
   return 0;
}
函数名: atexit
功  能: 注册终止函数
用  法: int atexit(atexit_t func);
程序例:
#include <stdio.h>
#include <stdlib.h>void exit_fn1(void)
{ printf("Exit function #1 called\n");
  }void exit_fn2(void)
{ printf("Exit function #2 called\n");
}int main(void)
{
   /* post exit function #1 */
   atexit(exit_fn1);
   /* post exit function #2 */
   atexit(exit_fn2);
   return 0;
}
函数名: atof
功  能: 把字符串转换成浮点数
用  法: double atof(const char *nptr);
程序例:#include <stdlib.h>
#include <stdio.h>
int main(void)
{  float f;
   char *str = "12345.67";
   f = atof(str);   printf("string = %s float = %f\n", str, f);
   return 0;}
函数名: atoi
功  能: 把字符串转换成长整型数
用  法: int atoi(const char *nptr);
程序例:
#include <stdlib.h>
#include <stdio.h>int main(void)
{  int n;
   char *str = "12345.67";
   n = atoi(str);
   printf("string = %s integer = %d\n", str, n);
   return 0;
}
函数名: atol
功  能: 把字符串转换成长整型数
用  法: long atol(const char *nptr);
程序例:
#include <stdlib.h>
#include <stdio.h>int main(void)
{  long l;
   char *str = "98765432";
   l = atol(lstr);
   printf("string = %s integer = %ld\n", str, l);
   return(0);
}字母B开头函数
函数名: 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("Graph err: %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();
   }
   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("Graph err: %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  80int 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;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -