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

📄 fp.htm

📁 C程序宝藏,内有标准C的详细介绍,适合自学,初学人员参考
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<HTML>
<HEAD>
   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
   <META NAME="Author" CONTENT="wdg">
   <META NAME="GENERATOR" CONTENT="Mozilla/4.03 [en] (Win95; I) [Netscape]">
   <TITLE>fp</TITLE>
</HEAD>
<BODY>
&nbsp;

<P>函数名: parsfnm
<BR>功&nbsp; 能: 分析文件名
<BR>用&nbsp; 法: char *parsfnm (char *cmdline, struct fcb *fcbptr, int
option);
<BR>程序例:

<P>#include &lt;process.h>
<BR>#include &lt;string.h>
<BR>#include &lt;stdio.h>
<BR>#include &lt;dos.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; char line[80];
<BR>&nbsp;&nbsp; struct fcb blk;

<P>&nbsp;&nbsp; /* get file name */
<BR>&nbsp;&nbsp; printf("Enter drive and file name (no path - ie. a:file.dat)\n");
<BR>&nbsp;&nbsp; gets(line);

<P>&nbsp;&nbsp; /* put file name in fcb */
<BR>&nbsp;&nbsp; if (parsfnm(line, &amp;blk, 1) == NULL)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Error in parsfm call\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Drive #%d&nbsp; Name: %11s\n",
blk.fcb_drive, blk.fcb_name);

<P>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: peek
<BR>功&nbsp; 能: 检查存储单元
<BR>用&nbsp; 法: int peek(int segment, unsigned offset);
<BR>程序例:

<P>#include &lt;stdio.h>
<BR>#include &lt;conio.h>
<BR>#include &lt;dos.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; int value = 0;

<P>&nbsp;&nbsp; printf("The current status of your keyboard is:\n");
<BR>&nbsp;&nbsp; value = peek(0x0040, 0x0017);
<BR>&nbsp;&nbsp; if (value &amp; 1)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Right shift on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Right shift off\n");

<P>&nbsp;&nbsp; if (value &amp; 2)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Left shift on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Left shift off\n");

<P>&nbsp;&nbsp; if (value &amp; 4)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Control key on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Control key off\n");

<P>&nbsp;&nbsp; if (value &amp; 8)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Alt key on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Alt key off\n");

<P>&nbsp;&nbsp; if (value &amp; 16)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Scroll lock on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Scroll lock off\n");

<P>&nbsp;&nbsp; if (value &amp; 32)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Num lock on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Num lock off\n");

<P>&nbsp;&nbsp; if (value &amp; 64)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Caps lock on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Caps lock off\n");

<P>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: peekb
<BR>功&nbsp; 能: 检查存储单元
<BR>用&nbsp; 法: char peekb (int segment, unsigned offset);
<BR>程序例:

<P>#include &lt;stdio.h>
<BR>#include &lt;conio.h>
<BR>#include &lt;dos.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; int value = 0;

<P>&nbsp;&nbsp; printf("The current status of your keyboard is:\n");
<BR>&nbsp;&nbsp; value = peekb(0x0040, 0x0017);
<BR>&nbsp;&nbsp; if (value &amp; 1)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Right shift on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Right shift off\n");

<P>&nbsp;&nbsp; if (value &amp; 2)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Left shift on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Left shift off\n");

<P>&nbsp;&nbsp; if (value &amp; 4)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Control key on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Control key off\n");

<P>&nbsp;&nbsp; if (value &amp; 8)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Alt key on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Alt key off\n");

<P>&nbsp;&nbsp; if (value &amp; 16)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Scroll lock on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Scroll lock off\n");

<P>&nbsp;&nbsp; if (value &amp; 32)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Num lock on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Num lock off\n");

<P>&nbsp;&nbsp; if (value &amp; 64)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Caps lock on\n");
<BR>&nbsp;&nbsp; else
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Caps lock off\n");

<P>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: perror
<BR>功&nbsp; 能: 系统错误信息
<BR>用&nbsp; 法: void perror(char *string);
<BR>程序例:

<P>#include &lt;stdio.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; FILE *fp;

<P>&nbsp;&nbsp; fp = fopen("perror.dat", "r");
<BR>&nbsp;&nbsp; if (!fp)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; perror("Unable to open file for reading");
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: pieslice
<BR>功&nbsp; 能: 绘制并填充一个扇形
<BR>用&nbsp; 法: void far pieslice(int x, int stanle, int endangle, int
radius);
<BR>程序例:

<P>#include &lt;graphics.h>
<BR>#include &lt;stdlib.h>
<BR>#include &lt;stdio.h>
<BR>#include &lt;conio.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; /* request auto detection */
<BR>&nbsp;&nbsp; int gdriver = DETECT, gmode, errorcode;
<BR>&nbsp;&nbsp; int midx, midy;
<BR>&nbsp;&nbsp; int stangle = 45, endangle = 135, radius = 100;

<P>&nbsp;&nbsp; /* initialize graphics and local variables */
<BR>&nbsp;&nbsp; initgraph(&amp;gdriver, &amp;gmode, "");

<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; }

<P>&nbsp;&nbsp; midx = getmaxx() / 2;
<BR>&nbsp;&nbsp; midy = getmaxy() / 2;

<P>&nbsp;&nbsp; /* set fill style and draw a pie slice */
<BR>&nbsp;&nbsp; setfillstyle(EMPTY_FILL, getmaxcolor());
<BR>&nbsp;&nbsp; pieslice(midx, midy, stangle, endangle, radius);

<P>&nbsp;&nbsp; /* clean up */
<BR>&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp; closegraph();
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: poke
<BR>功&nbsp; 能: 存值到一个给定存储单元
<BR>用&nbsp; 法: void poke(int segment, int offset, int value);
<BR>程序例:

<P>#include &lt;dos.h>
<BR>#include &lt;conio.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; clrscr();
<BR>&nbsp;&nbsp; cprintf("Make sure the scroll lock key is off and press
any key\r\n");
<BR>&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp; poke(0x0000,0x0417,16);
<BR>&nbsp;&nbsp; cprintf("The scroll lock is now on\r\n");
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: pokeb
<BR>功&nbsp; 能: 存值到一个给定存储单元
<BR>用&nbsp; 法: void pokeb(int segment, int offset, char value);
<BR>程序例:

<P>#include &lt;dos.h>
<BR>#include &lt;conio.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; clrscr();
<BR>&nbsp;&nbsp; cprintf("Make sure the scroll lock key is off and press
any key\r\n");
<BR>&nbsp;&nbsp; getch();
<BR>&nbsp;&nbsp; pokeb(0x0000,0x0417,16);
<BR>&nbsp;&nbsp; cprintf("The scroll lock is now on\r\n");
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: poly
<BR>功&nbsp; 能: 根据参数产生一个多项式
<BR>用&nbsp; 法: double poly(double x, int n, double c[]);
<BR>程序例:

<P>#include &lt;stdio.h>
<BR>#include &lt;math.h>

<P>/* polynomial:&nbsp; x**3 - 2x**2 + 5x - 1 */

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; double array[] = { -1.0, 5.0, -2.0, 1.0 };
<BR>&nbsp;&nbsp; double result;

<P>&nbsp;&nbsp; result = poly(2.0, 3, array);
<BR>&nbsp;&nbsp; printf("The polynomial: x**3 - 2.0x**2 + 5x - 1 at 2.0
is %lf\n",
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; result);
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: pow
<BR>功&nbsp; 能: 指数函数(x的y次方)
<BR>用&nbsp; 法: double pow(double x, double y);
<BR>程序例:

<P>#include &lt;math.h>
<BR>#include &lt;stdio.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; double x = 2.0, y = 3.0;

<P>&nbsp;&nbsp; printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;

<P>函数名: pow10
<BR>功&nbsp; 能: 指数函数(10的p次方)
<BR>用&nbsp; 法: double pow10(int p);
<BR>程序例:

<P>#include &lt;math.h>
<BR>#include &lt;stdio.h>

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; double p = 3.0;

<P>&nbsp;&nbsp; printf("Ten raised to %lf is %lf\n", p, pow10(p));
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;
<BR>&nbsp;

<P>函数名: printf
<BR>功&nbsp; 能: 产生格式化输出的函数
<BR>用&nbsp; 法: int printf(char *format...);
<BR>程序例:

<P>#include &lt;stdio.h>
<BR>#include &lt;string.h>

<P>#define I 555
<BR>#define R 5.5

<P>int main(void)
<BR>{
<BR>&nbsp;&nbsp; int i,j,k,l;
<BR>&nbsp;&nbsp; char buf[7];
<BR>&nbsp;&nbsp; char *prefix = buf;
<BR>&nbsp;&nbsp; char tp[20];
<BR>&nbsp;&nbsp; printf("prefix&nbsp; 6d&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
6o&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8x&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
10.2e&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "10.2f\n");
<BR>&nbsp;&nbsp; strcpy(prefix,"%");
<BR>&nbsp;&nbsp; for (i = 0; i &lt; 2; i++)
<BR>&nbsp;&nbsp; {
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (j = 0; j &lt; 2; j++)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (k = 0; k &lt;
2; k++)
<BR>&nbsp;&nbsp;&nbsp;&nbsp; for (l = 0; l &lt; 2; l++)
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if (i==0)&nbsp; strcat(prefix,"-");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if (j==0)&nbsp; strcat(prefix,"+");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if (k==0)&nbsp; strcat(prefix,"#");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if (l==0)&nbsp; strcat(prefix,"0");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf("%5s |",prefix);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,prefix);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcat(tp,"6d |");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf(tp,I);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,"");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,prefix);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcat(tp,"6o |");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf(tp,I);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,"");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,prefix);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcat(tp,"8x |");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
printf(tp,I);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,"");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
strcpy(tp,prefix);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strcat(tp,"10.2e |");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(tp,R);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strcpy(tp,prefix);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strcat(tp,"10.2f |");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(tp,R);
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("&nbsp; \n");
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strcpy(prefix,"%");
<BR>&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<BR>&nbsp;&nbsp; return 0;
<BR>}
<BR>&nbsp;

⌨️ 快捷键说明

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