龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

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

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
函数名: gcvt 功 能: 把浮点数转换成字符串 用 法: char *gcvt(double value, int ndigit, char *buf); 程序例: #include #include int main(void) { char str[25]; double num; int sig = 5; /* significant digits */ /* a regular num

  函数名: gcvt

  功 能: 把浮点数转换成字符串

  用 法: char *gcvt(double value, int ndigit, char *buf);

  程序例:

  #include

  #include

  

  int main(void)

  {

  char str[25];

  double num;

  int sig = 5; /* significant digits */

  

  /* a regular number */

  num = 9.876;

  gcvt(num, sig, str);

  printf("string = %s

", str);

  

  /* a negative number */

  num = -123.4567;

  gcvt(num, sig, str);

  printf("string = %s

", str);

  

  /* scientific notation */

  num = 0.678e5;

  gcvt(num, sig, str);

  printf("string = %s

", str);

  

  return(0);

  }

  

  

  

  

  函数名: geninterrupt

  功 能: 产生一个软中断

  用 法: void geninterrupt(int intr_num);

  程序例:

  

  #include

  #include

  

  /* function prototype */

  void writechar(char ch);

  

  int main(void)

  {

  clrscr();

  gotoxy(80,25);

  writechar('*');

  getch();

  return 0;

  }

  

  /*

  outputs a character at the current cursor

  position using the video BIOS to avoid the

  scrolling of the screen when writing to

  location (80,25).

  */

  

  void writechar(char ch)

  {

  strUCt text_info ti;

  /* grab current text settings */

  gettextinfo(&ti);

  /* interrupt 0x10 sub-function 9 */

  _AH = 9;

  /* character to be output */

  _AL = ch;

  _BH = 0; /* video page */

  _BL = ti.attribute; /* video attribute */

  _CX = 1; /* repetition factor */

  geninterrupt(0x10); /* output the char */

  }

  

  

  

  函数名: getarccoords

  功 能: 取得最后一次调用arc的坐标

  用 法: void far getarccoords(struct arccoordstype far *arccoords);

  程序例:

  

  #include

  #include

  #include

  #include

  

  int main(void)

  {

  /* request auto detection */

  int gdriver = DETECT, gmode, errorcode;

  struct arccoordstype arcinfo;

  int midx, midy;

  int stangle = 45, endangle = 270;

  char sstr[80], estr[80];

  

  /* initialize graphics and local variables */

  initgraph(&gdriver, &gmode, "");

  

  /* read result of initialization */

  errorcode = graphresult();

  /* an error occurred */

  if (errorcode != grOk)

  {

  printf("Graphics error: %s

",

  grapherrormsg(errorcode));

  printf("Press any key to halt:");

  getch();

  /* terminate with an error code */

  exit(1);

  }

  

  midx = getmaxx() / 2;

  midy = getmaxy() / 2;

  

  /* draw arc and get coordinates */

  setcolor(getmaxcolor());

  arc(midx, midy, stangle, endangle, 100);

  getarccoords(&arcinfo);

  

  /* convert arc information into strings */

  sprintf(sstr, "*- (%d, %d)",

  arcinfo.xstart, arcinfo.ystart);

  sprintf(estr, "*- (%d, %d)",

  arcinfo.xend, arcinfo.yend);

  

  /* output the arc information */

  outtextxy(arcinfo.xstart,

  arcinfo.ystart, sstr);

  outtextxy(arcinfo.xend,

  arcinfo.yend, estr);

  

  /* clean up */

  getch();

  closegraph();

  return 0;

  }

  

  

  

  

  函数名: getASPectratio

  功 能: 返回当前图形模式的纵横比

  用 法: void far getaspectratio(int far *xasp, int far *yasp);

  程序例:

  

  #include

  #include

  #include

  #include

  

  int main(void)

  {

  /* request auto detection */

  int gdriver = DETECT, gmode, errorcode;

  int xasp, yasp, midx, midy;

  

  /* initialize graphics and local variables */

  initgraph(&gdriver, &gmode, "");

  

  /* read result of initialization */

  errorcode = graphresult();

  /* an error occurred */

  if (errorcode != grOk)

  {

  printf("Graphics error: %s

",

  grapherrormsg(errorcode));

  printf("Press any key to halt:");

  getch();

  /* terminate with an error code */

  exit(1);

  }

  

  midx = getmaxx() / 2;

  midy = getmaxy() / 2;

  setcolor(getmaxcolor());

  

  /* get current aspect ratio settings */

  getaspectratio(&xasp, &yasp);

  

  /* draw normal circle */

  circle(midx, midy, 100);

  getch();

  

  /* draw wide circle */

  cleardevice();

  setaspectratio(xasp/2, yasp);

  circle(midx, midy, 100);

  getch();

  

  /* draw narrow circle */

  cleardevice();

  setaspectratio(xasp, yasp/2);

  circle(midx, midy, 100);

  

  /* clean up */

  getch();

  closegraph();

  return 0;

  }

  

  

  

  

  函数名: getbkcolor

  功 能: 返回当前背景颜色

  用 法: int far getbkcolor(void);

  程序例:

  

  #include

  #include

  #include

  #include

  #include

  

  int main(void)

  {

  /* request auto detection */

  int gdriver = DETECT, gmode, errorcode;

  int bkcolor, midx, midy;

  char bkname[35];

  

  /* initialize graphics and local variables */

  initgraph(&gdriver, &gmode, "");

  

  /* read result of initialization */

  errorcode = graphresult();

  /* an error occurred */

  if (errorcode != grOk)

  {

  printf("Graphics error: %s

",

  grapherrormsg(errorcode));

  printf("Press any key to halt:");

  getch();

  /* terminate with an error code */

  exit(1);

  }

  

  midx = getmaxx() / 2;

  midy = getmaxy() / 2;

  setcolor(getmaxcolor());

  

  /* for centering text on the display */

  settextjustify(CENTER_TEXT, CENTER_TEXT);

  

  /* get the current background color */

  bkcolor = getbkcolor();

  

  /* convert color value into a string */

  itoa(bkcolor, bkname, 10);

  strcat(bkname,

  " is the current background color.");

  

  /* display a message */

  outtextxy(midx, midy, bkname);

  

  /* clean up */

  getch();

  closegraph();

  return 0;

  }

  

  

  

  

  函数名: getc

  功 能: 从流中取字符

  用 法: int getc(FILE *stream);

  程序例:

  

  #include

  

  int main(void)

  {

  char ch;

  

  printf("Input a character:");

  /* read a character from the

  standard input stream */

  ch = getc(stdin);

  printf("The character input was: '%c'

",

  ch);

  return 0;

  }

  

  

  

  

  函数名: getcbrk

  功 能: 获取Control_break设置

  用 法: int getcbrk(void);

  程序例:

  

  #include

  #include

  

  int main(void)

  {

  if (getcbrk())

  printf("Cntrl-brk flag is on

");

  else

  printf("Cntrl-brk flag is off

");

  

  return 0;

  }

  

  

  

  函数名: getch

  功 能: 从控制台无回显地取一个字符

  用 法: int getch(void);

  程序例:

  

  #include

  #include

  

  int main(void)

  {

  char ch;

  

  printf("Input a character:");

  ch = getche();

  printf("

You input a '%c'

", ch);

  return 0;

  }

  

  

  

  函数名: getchar

  功 能: 从stdin流中读字符

  用 法: int getchar(void);

  程序例:

  

  #include

  

  int main(void)

  {

  int c;

  

  /* Note that getchar reads from stdin and

  is line buffered; this means it will

  not return until you press ENTER. */

  

  while ((c = getchar()) != '

')

  printf("%c", c);

  

  return 0;

  }

  

  

  

  函数名: getche

  功 能: 从控制台取字符(带回显)

  用 法: int getche(void);

  程序例:

  

  #include

  #include

  

  int main(void)

  {

  char ch;

  

  printf("Input a character:");

  ch = getche();

  printf("

You input a '%c'

", ch);

  return 0;

  }

  

  

  

  函数名: getcolor

  功 能: 返回当前画线颜色

  用 法: int far getcolor(void);

  程序例:

  

  #include

  #include

  #include

  #include

  #include

  

  int main(void)

  {

  /* request auto detection */

  int gdriver = DETECT, gmode, errorcode;

  int color, midx, midy;

  char colname[35];

  

  /* initialize graphics and local variables */

  initgraph(&gdriver, &gmode, "");

  

  /* read result of initialization */

  errorcode = graphresult();

  /* an error occurred */

  if (errorcode != grOk)

  {

  printf("Graphics error: %s

",

  grapherrormsg(errorcode));

  printf("Press any key to halt:");

  getch();

  /* terminate with an error code */

  exit(1);

  }

  

  midx = getmaxx() / 2;

  midy = getmaxy() / 2;

  setcolor(getmaxcolor());

  

  /* for centering text on the display */

  settextjustify(CENTER_TEXT, CENTER_TEXT);

  

  /* get the current drawing color */

  color = getcolor();

  

  /* convert color value into a string */

  itoa(color, colname, 10);

  strcat(colname,

  " is the current drawing color.");

  

  /* display a message */

  outtextxy(midx, midy, colname);

  

  /* clean up */

  getch();

  closegraph();

  return 0;

  }

  

  

  

  函数名: getcurdir

  功 能: 取指定驱动器的当前目录

  用 法: int getcurdir(int drive, char *direc);

  程序例:

  

  #include

  #include

  #include

  

  char *current_Directory(char *path)

  {

  strcpy(path, "X:"); /* fill string with form of response: X: */

  path[0] = 'A' + getdisk(); /* replace X with current drive letter */

  getcurdir(0, path+3); /* fill rest of string with current directory */

  return(path);

  }

  

  int main(void)

  {

  char curdir[MAXPATH];

  

  current_directory(curdir);

  printf("The current directory is %s

", curdir);

  

  return 0;

  }

  

  

  

  函数名: getcwd

  功 能: 取当前工作目录

  用 法: char *getcwd(char *buf, int n);

  程序例:

  

  #include

  #include

  

  int main(void)

  {

  char buffer[MAXPATH];

  

  getcwd(buffer, MAXPATH);

  printf("The current directory is: %s

", buffer);

  return 0;

  }

  

  

精彩图集

赞助商链接