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

📄 fb.htm

📁 各种各样的源代码
💻 HTM
📖 第 1 页 / 共 2 页
字号:
        功&nbsp; 能: 检查设备 <br>
        用&nbsp; 法: int biosequip(void); <br>
        程序例: </p>
        <p>#include &lt;bios.h&gt; <br>
        #include &lt;stdio.h&gt; </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; int result; <br>
        &nbsp;&nbsp; char buffer[512]; </p>
        <p>&nbsp;&nbsp; printf(&quot;Testing to see if drive a:
        is ready\n&quot;); <br>
        &nbsp;&nbsp; result = biosdisk(4,0,0,0,0,1,buffer); <br>
        &nbsp;&nbsp; result &amp;= 0x02; <br>
        &nbsp;&nbsp; (result) ? (printf(&quot;Drive A:
        Ready\n&quot;)) : <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (printf(&quot;Drive
        A: Not Ready\n&quot;)); </p>
        <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; </p>
        <p>函数名: bioskey <br>
        功&nbsp; 能: 直接使用BIOS服务的键盘接口 <br>
        用&nbsp; 法: int bioskey(int cmd); <br>
        程序例: </p>
        <p>#include &lt;stdio.h&gt; <br>
        #include &lt;bios.h&gt; <br>
        #include &lt;ctype.h&gt; </p>
        <p>#define RIGHT&nbsp; 0x01 <br>
        #define LEFT&nbsp;&nbsp; 0x02 <br>
        #define CTRL&nbsp;&nbsp; 0x04 <br>
        #define ALT&nbsp;&nbsp;&nbsp; 0x08 </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; int key, modifiers; </p>
        <p>&nbsp;&nbsp; /* function 1 returns 0 until a key is
        pressed */ <br>
        &nbsp;&nbsp; while (bioskey(1) == 0); </p>
        <p>&nbsp;&nbsp; /* function 0 returns the key that is
        waiting */ <br>
        &nbsp;&nbsp; key = bioskey(0); </p>
        <p>&nbsp;&nbsp; /* use function 2 to determine if shift
        keys were used */ <br>
        &nbsp;&nbsp; modifiers = bioskey(2); <br>
        &nbsp;&nbsp; if (modifiers) <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;[&quot;); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (modifiers &amp; RIGHT)
        printf(&quot;RIGHT&quot;); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (modifiers &amp; LEFT)&nbsp;
        printf(&quot;LEFT&quot;); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (modifiers &amp; CTRL)&nbsp;
        printf(&quot;CTRL&quot;); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (modifiers &amp; ALT)&nbsp;&nbsp;
        printf(&quot;ALT&quot;); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;]&quot;); <br>
        &nbsp;&nbsp; } <br>
        &nbsp;&nbsp; /* print out the character read */ <br>
        &nbsp;&nbsp; if (isalnum(key &amp; 0xFF)) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;'%c'\n&quot;,
        key); <br>
        &nbsp;&nbsp; else <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        printf(&quot;%#02x\n&quot;, key); <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; </p>
        <p>函数名: biosmemory <br>
        功&nbsp; 能: 返回存储块大小 <br>
        用&nbsp; 法:int biosmemory(void); <br>
        程序例: </p>
        <p>#include &lt;stdio.h&gt; <br>
        #include &lt;bios.h&gt; </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; int memory_size; </p>
        <p>&nbsp;&nbsp; memory_size = biosmemory();&nbsp; /*
        returns value up to 640K */ <br>
        &nbsp;&nbsp; printf(&quot;RAM size =
        %dK\n&quot;,memory_size); <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; </p>
        <p>函数名: biosprint <br>
        功&nbsp; 能: 直接使用BIOS服务的打印机I/O <br>
        用&nbsp; 法: int biosprint(int cmd, int byte, int
        port); <br>
        程序例: </p>
        <p>#include &lt;stdio.h&gt; <br>
        #include &lt;conio.h&gt; <br>
        #include &lt;bios.h&gt; </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; #define STATUS&nbsp; 2&nbsp;&nbsp;&nbsp; /*
        printer status command */ <br>
        &nbsp;&nbsp; #define PORTNUM 0&nbsp;&nbsp;&nbsp; /* port
        number for LPT1 */ </p>
        <p>&nbsp;&nbsp; int status, abyte=0; </p>
        <p>&nbsp;&nbsp; printf(&quot;Please turn off your
        printer.&nbsp; Press any key to continue\n&quot;); <br>
        &nbsp;&nbsp; getch(); <br>
        &nbsp;&nbsp; status = biosprint(STATUS, abyte, PORTNUM); <br>
        &nbsp;&nbsp; if (status &amp; 0x01) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;Device time
        out.\n&quot;); <br>
        &nbsp;&nbsp; if (status &amp; 0x08) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;I/O
        error.\n&quot;); </p>
        <p>&nbsp;&nbsp; if (status &amp; 0x10) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        printf(&quot;Selected.\n&quot;); <br>
        &nbsp;&nbsp; if (status &amp; 0x20) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;Out of
        paper.\n&quot;); </p>
        <p>&nbsp;&nbsp; if (status &amp; 0x40) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        printf(&quot;Acknowledge.\n&quot;); <br>
        &nbsp;&nbsp; if (status &amp; 0x80) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;Not
        busy.\n&quot;); </p>
        <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; </p>
        <p>函数名: biostime <br>
        功&nbsp; 能: 读取或设置BIOS时间 <br>
        用&nbsp; 法: long biostime(int cmd, long newtime); <br>
        程序例: </p>
        <p>#include &lt;stdio.h&gt; <br>
        #include &lt;bios.h&gt; <br>
        #include &lt;time.h&gt; <br>
        #include &lt;conio.h&gt; </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; long bios_time; </p>
        <p>&nbsp;&nbsp; clrscr(); <br>
        &nbsp;&nbsp; cprintf(&quot;The number of clock ticks
        since midnight is:\r\n&quot;); <br>
        &nbsp;&nbsp; cprintf(&quot;The number of seconds since
        midnight is:\r\n&quot;); <br>
        &nbsp;&nbsp; cprintf(&quot;The number of minutes since
        midnight is:\r\n&quot;); <br>
        &nbsp;&nbsp; cprintf(&quot;The number of hours since
        midnight is:\r\n&quot;); <br>
        &nbsp;&nbsp; cprintf(&quot;\r\nPress any key to
        quit:&quot;); <br>
        &nbsp;&nbsp; while(!kbhit()) <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bios_time = biostime(0,
        0L); </p>
        <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gotoxy(50, 1); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cprintf(&quot;%lu&quot;,
        bios_time); </p>
        <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gotoxy(50, 2); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cprintf(&quot;%.4f&quot;,
        bios_time / CLK_TCK); </p>
        <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gotoxy(50, 3); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cprintf(&quot;%.4f&quot;,
        bios_time / CLK_TCK / 60); </p>
        <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gotoxy(50, 4); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cprintf(&quot;%.4f&quot;,
        bios_time / CLK_TCK / 3600); <br>
        &nbsp;&nbsp; } <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; </p>
        <p>函数名: brk <br>
        功&nbsp; 能: 改变数据段空间分配 <br>
        用&nbsp; 法: int brk(void *endds); <br>
        程序例: </p>
        <p>#include &lt;stdio.h&gt; <br>
        #include &lt;alloc.h&gt; </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; char *ptr; </p>
        <p>&nbsp;&nbsp; printf(&quot;Changing allocation with
        brk()\n&quot;); <br>
        &nbsp;&nbsp; ptr = malloc(1); <br>
        &nbsp;&nbsp; printf(&quot;Before brk() call: %lu bytes
        free\n&quot;, coreleft()); <br>
        &nbsp;&nbsp; brk(ptr+1000); <br>
        &nbsp;&nbsp; printf(&quot; After brk() call: %lu bytes
        free\n&quot;, coreleft()); <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; </p>
        <p>函数名: bsearch <br>
        功&nbsp; 能: 二分法搜索 <br>
        用&nbsp; 法: void *bsearch(const void *key, const void
        *base, size_t *nelem, <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; size_t width,
        int(*fcmp)(const void *, const *)); <br>
        程序例: </p>
        <p>#include &lt;stdlib.h&gt; <br>
        #include &lt;stdio.h&gt; </p>
        <p>#define NELEMS(arr) (sizeof(arr) / sizeof(arr[0])) </p>
        <p>int numarray[] = {123, 145, 512, 627, 800, 933}; </p>
        <p>int numeric (const int *p1, const int *p2) <br>
        { <br>
        &nbsp;&nbsp; return(*p1 - *p2); <br>
        } </p>
        <p>int lookup(int key) <br>
        { <br>
        &nbsp;&nbsp; int *itemptr; </p>
        <p>&nbsp;&nbsp; /* The cast of (int(*)(const void *,const
        void*)) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; is needed to avoid a type
        mismatch error at <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; compile time */ <br>
        &nbsp;&nbsp; itemptr = bsearch (&amp;key, numarray,
        NELEMS(numarray), <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof(int), (int(*)(const
        void *,const void *))numeric); <br>
        &nbsp;&nbsp; return (itemptr != NULL); <br>
        } </p>
        <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; if (lookup(512)) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;512 is in the
        table.\n&quot;); <br>
        &nbsp;&nbsp; else <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;512 isn't in
        the table.\n&quot;); </p>
        <p>&nbsp;&nbsp; return 0; <br>
        } </p>
        </td>
    </tr>
</table>
</center></div><div align="center"><center>

<table border="0" cellspacing="1" width="640">
    <tr>
        <td class="p9" height="60">  <script>document.write("<p><a href=\"http://view.gznet.com/cgi-bin/rl_views.cgi?UID=10013421\" target=sxrl>"); 
document.write("<img src=\"http://refer.gznet.com/cgi-bin/rl_refer2.cgi?UID=10013421&refer="+escape(top.document.referrer)+"\" width=1 height=1 border=0 alt=\"  \">"); 
document.write("</a>"); 
</script></td>
    </tr>
</table>
</center></div>
</body>
</html>

⌨️ 快捷键说明

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