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

📄 王大刚--c语言编程宝典--i.htm

📁 初学者的良师益友。其中包括C的全部教程。
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0038)http://www.hjflying.8u8.com/cl/028.htm -->
<HTML><HEAD><TITLE>王大刚-->C语言编程宝典-->I</TITLE>
<META http-equiv=Content-Type content="text/html; charset=GB2312">
<META content="王大刚 C语言编程宝典 I" name=keywords>
<META content="王大刚 - C语言编程宝典 - I" name=description>
<STYLE>#page {
	LEFT: 0px; POSITION: absolute; TOP: 0px
}
.tt3 {
	FONT: 9pt/12pt "宋体"
}
.tt2 {
	FONT: 12pt/15pt "宋体"
}
A {
	TEXT-DECORATION: none
}
A:hover {
	COLOR: blue; TEXT-DECORATION: underline
}
</STYLE>

<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY text=#000000 vLink=#006699 aLink=#9900ff link=#006699 bgColor=#ffffff 
leftMargin=3 topMargin=3 marginwidth="3" marginheight="3">
<TABLE cellSpacing=0 cellPadding=10 width="100%" border=0>
  <TBODY>
  <TR>
    <TD class=tt3 vAlign=top width="8%" bgColor=#e0e0e0><STRONG><A 
      href="http://www.hjflying.8u8.com/cl/029.htm">后一页</A><BR><A 
      href="http://www.hjflying.8u8.com/cl/027.htm">前一页</A><BR><A 
      href="http://www.hjflying.8u8.com/cl/index.html">回目录</A><BR><A 
      href="http://www.hjflying.8u8.com/index.htm">回首页</A><BR></STRONG></TD>
    <TD class=tt2 width="84%" bgColor=#f5f8f8>
      <CENTER><B><FONT style="FONT-SIZE: 16.5pt" face=楷体_GB2312 
      color=#ff6666>I</FONT></B></CENTER>
      <HR width="94%" color=#ee9b73 SIZE=1>

      <P>函数名: imagesize <BR>功&nbsp; 能: 返回保存位图像所需的字节数 <BR>用&nbsp; 法: unsigned far 
      imagesize(int left, int top, int right, int bottom); <BR>程序例: <BR>
      <P>#include &lt;graphics.h&gt; <BR>#include &lt;stdlib.h&gt; <BR>#include 
      &lt;stdio.h&gt; <BR>#include &lt;conio.h&gt; <BR>
      <P>#define ARROW_SIZE 10 <BR>
      <P>void draw_arrow(int x, int y); <BR>
      <P>int main(void) <BR>{ <BR>&nbsp;&nbsp; /* request autodetection */ 
      <BR>&nbsp;&nbsp; int gdriver = DETECT, gmode, errorcode; <BR>&nbsp;&nbsp; 
      void *arrow; <BR>&nbsp;&nbsp; int x, y, maxx; <BR>&nbsp;&nbsp; unsigned 
      int size; <BR>
      <P>&nbsp;&nbsp; /* initialize graphics and local variables */ 
      <BR>&nbsp;&nbsp; initgraph(&amp;gdriver, &amp;gmode, ""); <BR>
      <P>&nbsp;&nbsp; /* read result of initialization */ <BR>&nbsp;&nbsp; 
      errorcode = graphresult(); <BR>&nbsp;&nbsp; if (errorcode != grOk)&nbsp; 
      /* an error occurred */ <BR>&nbsp;&nbsp; { 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Graphics error: %s\n", 
      grapherrormsg(errorcode)); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      printf("Press any key to halt:"); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      getch(); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit(1); /* terminate with an 
      error code */ <BR>&nbsp;&nbsp; } <BR>
      <P>&nbsp;&nbsp; maxx = getmaxx(); <BR>&nbsp;&nbsp; x = 0; <BR>&nbsp;&nbsp; 
      y = getmaxy() / 2; <BR>
      <P>&nbsp;&nbsp; /* draw the image to be grabbed */ <BR>&nbsp;&nbsp; 
      draw_arrow(x, y); <BR>
      <P>&nbsp;&nbsp; /* calculate the size of the image */ <BR>&nbsp;&nbsp; 
      size = imagesize(x, y-ARROW_SIZE, x+(4*ARROW_SIZE), y+ARROW_SIZE); <BR>
      <P>&nbsp;&nbsp; /* allocate memory to hold the image */ <BR>&nbsp;&nbsp; 
      arrow = malloc(size); <BR>
      <P>&nbsp;&nbsp; /* grab the image */ <BR>&nbsp;&nbsp; getimage(x, 
      y-ARROW_SIZE, x+(4*ARROW_SIZE), y+ARROW_SIZE, arrow); <BR>
      <P>&nbsp;&nbsp; /* repeat until a key is pressed */ <BR>&nbsp;&nbsp; while 
      (!kbhit()) <BR>&nbsp;&nbsp; { <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* erase 
      old image */ <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; putimage(x, y-ARROW_SIZE, 
      arrow, XOR_PUT); <BR>
      <P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += ARROW_SIZE; 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (x &gt;= maxx) 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x = 0; <BR>
      <P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* plot new image */ 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; putimage(x, y-ARROW_SIZE, arrow, 
      XOR_PUT); <BR>&nbsp;&nbsp; } <BR>
      <P>&nbsp;&nbsp; /* clean up */ <BR>&nbsp;&nbsp; free(arrow); 
      <BR>&nbsp;&nbsp; closegraph(); <BR>&nbsp;&nbsp; return 0; <BR>} <BR>
      <P>void draw_arrow(int x, int y) <BR>{ <BR>&nbsp;&nbsp; /* draw an arrow 
      on the screen */ <BR>&nbsp;&nbsp; moveto(x, y); <BR>&nbsp;&nbsp; 
      linerel(4*ARROW_SIZE, 0); <BR>&nbsp;&nbsp; linerel(-2*ARROW_SIZE, 
      -1*ARROW_SIZE); <BR>&nbsp;&nbsp; linerel(0, 2*ARROW_SIZE); 
      <BR>&nbsp;&nbsp; linerel(2*ARROW_SIZE, -1*ARROW_SIZE); <BR>} <BR>&nbsp; 
      <BR>&nbsp; <BR>&nbsp; <BR>
      <P>函数名: initgraph <BR>功&nbsp; 能: 初始化图形系统 <BR>用&nbsp; 法: void far 
      initgraph(int far *graphdriver, int far *graphmode, <BR>&nbsp;&nbsp;&nbsp; 
      char far *pathtodriver); <BR>程序例: <BR>
      <P>#include &lt;graphics.h&gt; <BR>#include &lt;stdlib.h&gt; <BR>#include 
      &lt;stdio.h&gt; <BR>#include &lt;conio.h&gt; <BR>
      <P>int main(void) <BR>{ <BR>&nbsp;&nbsp; /* request auto detection */ 
      <BR>&nbsp;&nbsp; int gdriver = DETECT, gmode, errorcode; <BR>
      <P>&nbsp;&nbsp; /* initialize graphics mode */ <BR>&nbsp;&nbsp; 
      initgraph(&amp;gdriver, &amp;gmode, ""); <BR>
      <P>&nbsp;&nbsp; /* read result of initialization */ <BR>&nbsp;&nbsp; 
      errorcode = graphresult(); <BR>
      <P>&nbsp;&nbsp; if (errorcode != grOk)&nbsp; /* an error occurred */ 
      <BR>&nbsp;&nbsp; { <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Graphics 
      error: %s\n", grapherrormsg(errorcode)); 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Press any key to halt:"); 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getch(); 
      <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      exit(1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      /* return with error code */ <BR>&nbsp;&nbsp; } <BR>
      <P>&nbsp;&nbsp; /* draw a line */ <BR>&nbsp;&nbsp; line(0, 0, getmaxx(), 
      getmaxy()); <BR>
      <P>&nbsp;&nbsp; /* clean up */ <BR>&nbsp;&nbsp; getch(); <BR>&nbsp;&nbsp; 
      closegraph(); <BR>&nbsp;&nbsp; return 0; <BR>} <BR>&nbsp; <BR>&nbsp; <BR>
      <P>函数名: inport <BR>功&nbsp; 能: 从硬件端口中输入 <BR>用&nbsp; 法: int inp(int protid); 
      <BR>程序例: <BR>
      <P>#include &lt;stdio.h&gt; <BR>#include &lt;dos.h&gt; <BR>
      <P>int main(void) <BR>{ <BR>&nbsp;&nbsp; int result; <BR>&nbsp;&nbsp; int 
      port = 0;&nbsp; /* serial port 0 */ <BR>
      <P>&nbsp;&nbsp; result = inport(port); <BR>&nbsp;&nbsp; printf("Word read 
      from port %d = 0x%X\n", port, result); <BR>&nbsp;&nbsp; return 0; <BR>} 
      <BR>&nbsp; <BR>&nbsp; <BR>
      <P>函数名: insline <BR>功&nbsp; 能: 在文本窗口中插入一个空行 <BR>用&nbsp; 法: void 
      insline(void); <BR>程序例: <BR>
      <P>#include &lt;conio.h&gt; <BR>
      <P>int main(void) <BR>{ <BR>&nbsp;&nbsp; clrscr(); <BR>&nbsp;&nbsp; 
      cprintf("INSLINE inserts an empty line in the text window\r\n"); 
      <BR>&nbsp;&nbsp; cprintf("at the cursor position using the current 
      text\r\n"); <BR>&nbsp;&nbsp; cprintf("background color.&nbsp; All lines 
      below the empty one\r\n"); <BR>&nbsp;&nbsp; cprintf("move down one line 
      and the bottom line scrolls\r\n"); <BR>&nbsp;&nbsp; cprintf("off the 
      bottom of the window.\r\n"); <BR>&nbsp;&nbsp; cprintf("\r\nPress any key 
      to continue:"); <BR>&nbsp;&nbsp; gotoxy(1, 3); <BR>&nbsp;&nbsp; getch(); 
      <BR>&nbsp;&nbsp; insline(); <BR>&nbsp;&nbsp; getch(); <BR>&nbsp;&nbsp; 
      return 0; <BR>} <BR>&nbsp; <BR>&nbsp; <BR>&nbsp; <BR>
      <P>函数名: installuserdriver <BR>功&nbsp; 能: 安装设备驱动程序到BGI设备驱动程序表中 <BR>用&nbsp; 
      法: int far installuserdriver(char far *name, int (*detect)(void)); 
      <BR>程序例: <BR>
      <P>#include &lt;graphics.h&gt; <BR>#include &lt;stdlib.h&gt; <BR>#include 
      &lt;stdio.h&gt; <BR>#include &lt;conio.h&gt; <BR>
      <P>/* function prototypes */ <BR>int huge detectEGA(void); <BR>void 
      checkerrors(void); <BR>
      <P>int main(void) <BR>{ <BR>&nbsp;&nbsp; int gdriver, gmode; <BR>
      <P>&nbsp;&nbsp; /* install a user written device driver */ 
      <BR>&nbsp;&nbsp; gdriver = installuserdriver("EGA", detectEGA); <BR>
      <P>&nbsp;&nbsp; /* must force use of detection routine */ <BR>&nbsp;&nbsp; 
      gdriver = DETECT; <BR>
      <P>&nbsp;&nbsp; /* check for any installation errors */ <BR>&nbsp;&nbsp; 
      checkerrors(); <BR>
      <P>&nbsp;&nbsp; /* initialize graphics and local variables */ 
      <BR>&nbsp;&nbsp; initgraph(&amp;gdriver, &amp;gmode, ""); <BR>
      <P>&nbsp;&nbsp; /* check for any initialization errors */ <BR>&nbsp;&nbsp; 
      checkerrors(); <BR>
      <P>&nbsp;&nbsp; /* draw a line */ <BR>&nbsp;&nbsp; line(0, 0, getmaxx(), 
      getmaxy()); <BR>
      <P>&nbsp;&nbsp; /* clean up */ <BR>&nbsp;&nbsp; getch(); <BR>&nbsp;&nbsp; 
      closegraph(); <BR>&nbsp;&nbsp; return 0; <BR>} <BR>
      <P>/* detects EGA or VGA cards */ <BR>int huge detectEGA(void) <BR>{ 
      <BR>&nbsp;&nbsp; int driver, mode, sugmode = 0; <BR>
      <P>&nbsp;&nbsp; detectgraph(&amp;driver, &amp;mode); <BR>&nbsp;&nbsp; if 
      ((driver == EGA) || (driver == VGA)) <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* 
      return suggested video mode number */ <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      return sugmode; <BR>&nbsp;&nbsp; else <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      /* return an error code */ <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 
      grError; <BR>} <BR>
      <P>/* check for and report any graphics errors */ <BR>void 
      checkerrors(void) <BR>{ <BR>&nbsp;&nbsp; int errorcode; <BR>

⌨️ 快捷键说明

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