站長(zhǎng)資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        C語(yǔ)言函數(shù)大全 f

        函數(shù)名: fabs
        功  能: 返回浮點(diǎn)數(shù)的絕對(duì)值
        用  法: double fabs(double x);
        程序例:

        #include <stdio.h>
        #include <math.h>

        int main(void)
        {
           float  number = -1234.0;

           printf(“number: %f  absolute value: %fn”,
           number, fabs(number));
           return 0;
        }
         
         
         

        函數(shù)名: farcalloc
        功  能: 從遠(yuǎn)堆棧中申請(qǐng)空間
        用  法: void far *farcalloc(unsigned long units, unsigned ling unitsz);
        程序例:
        #include <stdio.h>
        #include <alloc.h>
        #include <string.h>
        #include <dos.h>

        int main(void)
        {
           char far *fptr;
           char *str = “Hello”;

           /* allocate memory for the far pointer */
           fptr = farcalloc(10, sizeof(char));

           /* copy “Hello” into allocated memory */
           /*
              Note: movedata is used because you
              might be in a small data model, in
              which case a normal string copy routine
              can not be used since it assumes the
              pointer size is near.
           */
           movedata(FP_SEG(str), FP_OFF(str),
             FP_SEG(fptr), FP_OFF(fptr),
                    strlen(str));

           /* display string (note the F modifier) */
           printf(“Far string is: %Fsn”, fptr);

           /* free the memory */
           farfree(fptr);

           return 0;
        }
         
         
         

        函數(shù)名: farcoreleft
        功  能: 返回遠(yuǎn)堆中未作用存儲(chǔ)區(qū)大小
        用  法: long farcoreleft(void);
        程序例:

        #include <stdio.h>
        #include <alloc.h>

        int main(void)
        {
           printf(“The difference between the
            highest allocated block in the
                   farn”);
           printf(“heap and the top of the far heap
                   is: %lu bytesn”, farcoreleft());

           return 0;
        }
         
         
         

        函數(shù)名: farfree
        功  能: 從遠(yuǎn)堆中釋放一塊
        用  法: void farfree(void);
        程序例:

        #include <stdio.h>
        #include <alloc.h>
        #include <string.h>
        #include <dos.h>

        int main(void)
        {
           char far *fptr;
           char *str = “Hello”;

           /* allocate memory for the far pointer */
           fptr = farcalloc(10, sizeof(char));

           /* copy “Hello” into allocated memory */
           /*
              Note: movedata is used because you might be in a small data model,
              in which case a normal string copy routine can’t be used since it
              assumes the pointer size is near.
           */
           movedata(FP_SEG(str), FP_OFF(str),
                    FP_SEG(fptr), FP_OFF(fptr),
                    strlen(str));

           /* display string (note the F modifier) */
           printf(“Far string is: %Fsn”, fptr);

           /* free the memory */
           farfree(fptr);

           return 0;
        }
         
         
         

        函數(shù)名: farmalloc
        功  能: 從遠(yuǎn)堆中分配存儲(chǔ)塊
        用  法: void far *farmalloc(unsigned long size);
        程序例:

        #include <stdio.h>
        #include <alloc.h>
        #include <string.h>
        #include <dos.h>

        int main(void)
        {
           char far *fptr;
           char *str = “Hello”;

           /* allocate memory for the far pointer */
           fptr = farmalloc(10);

           /* copy “Hello” into allocated memory */
           /*
              Note: movedata is used because we might
              be in a small data model, in which case
              a normal string copy routine can not be
              used since it assumes the pointer size
              is near.
           */
           movedata(FP_SEG(str), FP_OFF(str),
             FP_SEG(fptr), FP_OFF(fptr),
             strlen(str));

           /* display string (note the F modifier) */
           printf(“Far string is: %Fsn”, fptr);

           /* free the memory */
           farfree(fptr);

           return 0;
        }
         
         
         

        函數(shù)名: farrealloc
        功  能: 調(diào)整遠(yuǎn)堆中的分配塊
        用  法: void far *farrealloc(void far *block, unsigned long newsize);
        程序例:

        #include <stdio.h>
        #include <alloc.h>

        int main(void)
        {
           char far *fptr;

           fptr = farmalloc(10);
           printf(“First address: %Fpn”, fptr);
           fptr = farrealloc(fptr,20);
           printf(“New address  : %Fpn”, fptr);
           farfree(fptr);
           return 0;
        }
         
         

        函數(shù)名: fclose
        功  能: 關(guān)閉一個(gè)流
        用  法: int fclose(FILE *stream);
        程序例:

        #include <string.h>
        #include <stdio.h>

        int main(void)
        {
           FILE *fp;
           char buf[11] = “0123456789”;

           /* create a file containing 10 bytes */
           fp = fopen(“DUMMY.FIL”, “w”);
           fwrite(&buf, strlen(buf), 1, fp);

           /* close the file */
           fclose(fp);
           return 0;
        }
         
         
         

        函數(shù)名: fcloseall
        功  能: 關(guān)閉打開(kāi)流
        用  法: int fcloseall(void);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           int streams_closed;

           /* open two streams */
           fopen(“DUMMY.ONE”, “w”);
           fopen(“DUMMY.TWO”, “w”);

           /* close the open streams */
           streams_closed = fcloseall();

           if (streams_closed == EOF)
              /* issue an error message */
              perror(“Error”);
           else
              /* print result of fcloseall() function */
              printf(“%d streams were closed.n”, streams_closed);

           return 0;
        }
         
         

        函數(shù)名: fcvt
        功  能: 把一個(gè)浮點(diǎn)數(shù)轉(zhuǎn)換為字符串
        用  法: char *fcvt(double value, int ndigit, int *decpt, int *sign);
        程序例:

        #include <stdlib.h>
        #include <stdio.h>
        #include <conio.h>

        int main(void)
        {
           char *string;
           double value;
           int dec, sign;
           int ndig = 10;

           clrscr();
           value = 9.876;
           string = ecvt(value, ndig, &dec, &sign);
           printf(“string = %s      dec = %d
                  sign = %dn”, string, dec, sign);

           value = -123.45;
           ndig= 15;
           string = ecvt(value,ndig,&dec,&sign);
           printf(“string = %s dec = %d sign = %dn”,
                  string, dec, sign);
         

           value = 0.6789e5; /* scientific
                                notation */
           ndig = 5;
           string = ecvt(value,ndig,&dec,&sign);
           printf(“string = %s           dec = %d
                  sign = %dn”, string, dec, sign);

           return 0;
        }
         
         
         

        函數(shù)名: fdopen
        功  能: 把流與一個(gè)文件句柄相接
        用  法: FILE *fdopen(int handle, char *type);
        程序例:

        #include <sysstat.h>
        #include <stdio.h>
        #include <fcntl.h>
        #include <io.h>

        int main(void)
        {
           int handle;
           FILE *stream;

           /* open a file */
           handle = open(“DUMMY.FIL”, O_CREAT,
            S_IREAD | S_IWRITE);

           /* now turn the handle into a stream */
           stream = fdopen(handle, “w”);

           if (stream == NULL)
              printf(“fdopen failedn”);
           else
           {
              fprintf(stream, “Hello worldn”);
              fclose(stream);
           }
           return 0;
        }
         
         

        函數(shù)名: feof
        功  能: 檢測(cè)流上的文件結(jié)束符
        用  法: int feof(FILE *stream);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           FILE *stream;

           /* open a file for reading */
           stream = fopen(“DUMMY.FIL”, “r”);

           /* read a character from the file */
           fgetc(stream);

           /* check for EOF */
           if (feof(stream))
              printf(“We have reached end-of-filen”);

           /* close the file */
           fclose(stream);
           return 0;
        }
         
         

        函數(shù)名: ferror
        功  能: 檢測(cè)流上的錯(cuò)誤
        用  法: int ferror(FILE *stream);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           FILE *stream;

           /* open a file for writing */
           stream = fopen(“DUMMY.FIL”, “w”);

           /* force an error condition by attempting to read */
           (void) getc(stream);

           if (ferror(stream))  /* test for an error on the stream */
           {
              /* display an error message */
              printf(“Error reading from DUMMY.FILn”);

              /* reset the error and EOF indicators */
              clearerr(stream);
           }

           fclose(stream);
           return 0;
        }
         
         
         

        函數(shù)名: fflush
        功  能: 清除一個(gè)流
        用  法: int fflush(FILE *stream);
        程序例:

        #include <string.h>
        #include <stdio.h>
        #include <conio.h>
        #include <io.h>

        void flush(FILE *stream);

        int main(void)
        {
           FILE *stream;
           char msg[] = “This is a test”;

           /* create a file */
           stream = fopen(“DUMMY.FIL”, “w”);

           /* write some data to the file */
           fwrite(msg, strlen(msg), 1, stream);

           clrscr();
           printf(“Press any key to flush
           DUMMY.FIL:”);
           getch();

           /* flush the data to DUMMY.FIL without
              closing it */
           flush(stream);

           printf(“nFile was flushed, Press any key
           to quit:”);
           getch();
           return 0;
        }

        void flush(FILE *stream)
        {
             int duphandle;

             /* flush the stream’s internal buffer */
             fflush(stream);

             /* make a duplicate file handle */
             duphandle = dup(fileno(stream));

             /* close the duplicate handle to flush
                the DOS buffer */
             close(duphandle);
        }
         
         
         

        函數(shù)名: fgetc
        功  能: 從流中讀取字符
        用  法: int fgetc(FILE *stream);
        程序例:

        #include <string.h>
        #include <stdio.h>
        #include <conio.h>

        int main(void)
        {
           FILE *stream;
           char string[] = “This is a test”;
           char ch;

           /* open a file for update */
           stream = fopen(“DUMMY.FIL”, “w+”);

           /* write a string into the file */
           fwrite(string, strlen(string), 1, stream);

           /* seek to the beginning of the file */
           fseek(stream, 0, SEEK_SET);

           do
           {
              /* read a char from the file */
              ch = fgetc(stream);

              /* display the character */
              putch(ch);
           } while (ch != EOF);

           fclose(stream);
           return 0;
        }
         
         
         

        函數(shù)名: fgetchar
        功  能: 從流中讀取字符
        用  法: int fgetchar(void);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           char ch;

           /* prompt the user for input */
           printf(“Enter a character followed by
           <Enter>: “);

           /* read the character from stdin */
           ch = fgetchar();

           /* display what was read */
           printf(“The character read is: ‘%c’n”,
                  ch);
           return 0;
        }
         
         
         

        函數(shù)名: fgetpos
        功  能: 取得當(dāng)前文件的句柄
        用  法: int fgetpos(FILE *stream);
        程序例:

        #include <string.h>
        #include <stdio.h>

        int main(void)
        {
           FILE *stream;
           char string[] = “This is a test”;
           fpos_t filepos;

           /* open a file for update */
           stream = fopen(“DUMMY.FIL”, “w+”);

           /* write a string into the file */
           fwrite(string, strlen(string), 1, stream);

           /* report the file pointer position */
           fgetpos(stream, &filepos);
           printf(“The file pointer is at byte
                  %ldn”, filepos);

           fclose(stream);
           return 0;
        }
         
         
         

        函數(shù)名: fgets
        功  能: 從流中讀取一字符串
        用  法: char *fgets(char *string, int n, FILE *stream);
        程序例:

        #include <string.h>
        #include <stdio.h>

        int main(void)
        {
           FILE *stream;
           char string[] = “This is a test”;
           char msg[20];

           /* open a file for update */
           stream = fopen(“DUMMY.FIL”, “w+”);

           /* write a string into the file */
           fwrite(string, strlen(string), 1, stream);

           /* seek to the start of the file */
           fseek(stream, 0, SEEK_SET);

           /* read a string from the file */
           fgets(msg, strlen(string)+1, stream);

           /* display the string */
           printf(“%s”, msg);

           fclose(stream);
           return 0;
        }
         
         
         

        函數(shù)名: filelength
        功  能: 取文件長(zhǎng)度字節(jié)數(shù)
        用  法: long filelength(int handle);
        程序例:

        #include <string.h>
        #include <stdio.h>
        #include <fcntl.h>
        #include <io.h>

        int main(void)
        {
           int handle;
           char buf[11] = “0123456789”;

           /* create a file containing 10 bytes */
           handle = open(“DUMMY.FIL”, O_CREAT);
           write(handle, buf, strlen(buf));

           /* display the size of the file */
           printf(“file length in bytes: %ldn”,
           filelength(handle));

           /* close the file */
           close(handle);
           return 0;
        }
         
         

        函數(shù)名: fillellipse
        功  能: 畫(huà)出并填充一橢圓
        用  法: void far fillellipse(int x, int y, int xradius, int yradius);
        程序例:

        #include <graphics.h>
        #include <conio.h>

        int main(void)
        {
           int gdriver = DETECT, gmode;
           int xcenter, ycenter, i;

           initgraph(&gdriver,&gmode,””);
           xcenter = getmaxx() / 2;
           ycenter = getmaxy() / 2;

           for (i=0; i<13; i++)
           {
              setfillstyle(i,WHITE);
              fillellipse(xcenter,ycenter,100,50);
              getch();
           }

           closegraph();
           return 0;
        }
         
         
         

        函數(shù)名: fillpoly
        功  能: 畫(huà)并填充一個(gè)多邊形
        用  法: void far fillpoly(int numpoints, int far *polypoints);
        程序例:

        #include <graphics.h>
        #include <stdlib.h>
        #include <stdio.h>
        #include <conio.h>

        int main(void)
        {
           /* request auto detection */
           int gdriver = DETECT, gmode, errorcode;
           int i, maxx, maxy;

           /* our polygon array */
           int poly[8];

           /* initialize graphics, local variables */
           initgraph(&gdriver, &gmode, “”);

           /* read result of initialization */
           errorcode = graphresult();
           if (errorcode != grOk)
           /* an error occurred */
           {
              printf(“Graphics error: %sn”,
                     grapherrormsg(errorcode));
              printf(“Press any key to halt:”);
              getch();
              exit(1);
              /* terminate with an error code */
           }

           maxx = getmaxx();
           maxy = getmaxy();

           poly[0] = 20;        /* 1st vertext */
           poly[1] = maxy / 2;

           poly[2] = maxx – 20; /* 2nd */
           poly[3] = 20;

           poly[4] = maxx – 50; /* 3rd */
           poly[5] = maxy – 20;

           /*
              4th vertex. fillpoly automatically
              closes the polygon.
           */
           poly[6] = maxx / 2;
           poly[7] = maxy / 2;

           /* loop through the fill patterns */
           for (i=EMPTY_FILL; i<USER_FILL; i++)
           {
              /* set fill pattern */
              setfillstyle(i, getmaxcolor());

              /* draw a filled polygon */
              fillpoly(4, poly);

              getch();
           }

           /* clean up */
           closegraph();
           return 0;
        }
         
         
         

        函數(shù)名: findfirst, findnext
        功  能: 搜索磁盤(pán)目錄; 取得下一個(gè)匹配的findfirst模式的文件
        用  法: int findfirst(char *pathname, struct ffblk *ffblk, int attrib);
         int findnext(struct ffblk *ffblk);
        程序例:

        /* findnext example */

        #include <stdio.h>
        #include <dir.h>

        int main(void)
        {
           struct ffblk ffblk;
           int done;
           printf(“Directory listing of *.*n”);
           done = findfirst(“*.*”,&ffblk,0);
           while (!done)
           {
              printf(”  %sn”, ffblk.ff_name);
              done = findnext(&ffblk);
           }

           return 0;
        }
         
         
         

        函數(shù)名: floodfill
        功  能: 填充一個(gè)有界區(qū)域
        用  法: void far floodfill(int x, int y, int border);
        程序例:

        #include <graphics.h>
        #include <stdlib.h>
        #include <stdio.h>
        #include <conio.h>

        int main(void)
        {
           /* request auto detection */
           int gdriver = DETECT, gmode, errorcode;
           int maxx, maxy;

           /* initialize graphics, local variables */
           initgraph(&gdriver, &gmode, “”);

           /* read result of initialization */
           errorcode = graphresult();
           if (errorcode != grOk)
           /* an error occurred */
           {
              printf(“Graphics error: %sn”,
                     grapherrormsg(errorcode));
              printf(“Press any key to halt:”);
              getch();
              exit(1);
              /* terminate with an error code */
           }

           maxx = getmaxx();
           maxy = getmaxy();

           /* select drawing color */
           setcolor(getmaxcolor());

           /* select fill color */
           setfillstyle(SOLID_FILL, getmaxcolor());

           /* draw a border around the screen */
           rectangle(0, 0, maxx, maxy);

           /* draw some circles */
           circle(maxx / 3, maxy /2, 50);
           circle(maxx / 2, 20, 100);
           circle(maxx-20, maxy-50, 75);
           circle(20, maxy-20, 25);

           /* wait for a key */
           getch();

           /* fill in bounded region */
           floodfill(2, 2, getmaxcolor());

           /* clean up */
           getch();
           closegraph();
           return 0;
        }
         
         
         

        函數(shù)名: floor
        功  能: 向下舍入
        用  法: double floor(double x);
        程序例:

        #include <stdio.h>
        #include <math.h>

        int main(void)
        {
           double number = 123.54;
           double down, up;

           down = floor(number);
           up = ceil(number);

           printf(“original number     %10.2lfn”,
                  number);
           printf(“number rounded down %10.2lfn”,
                  down);
           printf(“number rounded up   %10.2lfn”,
                  up);

           return 0;
        }
         
         
         

        函數(shù)名: flushall
        功  能: 清除所有緩沖區(qū)
        用  法: int flushall(void);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           FILE *stream;

           /* create a file */
           stream = fopen(“DUMMY.FIL”, “w”);

           /* flush all open streams */
           printf(“%d streams were flushed.n”,
           flushall());

           /* close the file */
           fclose(stream);
           return 0;
        }
         
         
         

        函數(shù)名: fmod
        功  能: 計(jì)算x對(duì)y的模, 即x/y的余數(shù)
        用  法: double fmod(double x, double y);
        程序例:

        #include <stdio.h>
        #include <math.h>

        int main(void)
        {
           double x = 5.0, y = 2.0;
           double result;

           result = fmod(x,y);
           printf(“The remainder of (%lf / %lf) is
                  %lfn”, x, y, result);
           return 0;
        }
         
         
         

        函數(shù)名: fnmerge
        功  能: 建立新文件名
        用  法: void fnerge(char *path, char *drive, char *dir);
        程序例:

        #include <string.h>
        #include <stdio.h>
        #include <dir.h>
         

        int main(void)
        {
            char s[MAXPATH];
            char drive[MAXDRIVE];
            char dir[MAXDIR];
            char file[MAXFILE];
            char ext[MAXEXT];

            getcwd(s,MAXPATH);              /* get the current working directory */
            strcat(s,”\”);                  /* append on a trailing character */
            fnsplit(s,drive,dir,file,ext); /* split the string to separate elems */
            strcpy(file,”DATA”);
            strcpy(ext,”.TXT”);
            fnmerge(s,drive,dir,file,ext);   /* merge everything into one string */
            puts(s);                                 /* display resulting string */

            return 0;
        }
         
         
         

        函數(shù)名: fopen
        功  能: 打開(kāi)一個(gè)流
        用  法: FILE *fopen(char *filename, char *type);
        程序例:

        #include <stdlib.h>
        #include <stdio.h>
        #include <dir.h>

        int main(void)
        {
            char *s;
            char drive[MAXDRIVE];
            char dir[MAXDIR];
            char file[MAXFILE];
            char ext[MAXEXT];
            int flags;

            s=getenv(“COMSPEC”); /* get the comspec environment parameter */
            flags=fnsplit(s,drive,dir,file,ext);

            printf(“Command processor info:n”);
            if(flags & DRIVE)
               printf(“tdrive: %sn”,drive);
            if(flags & DIRECTORY)
               printf(“tdirectory: %sn”,dir);
            if(flags & FILENAME)
               printf(“tfile: %sn”,file);
            if(flags & EXTENSION)
               printf(“textension: %sn”,ext);

            return 0;
        }
         

        函數(shù)名: fprintf
        功  能: 傳送格式化輸出到一個(gè)流中
        用  法: int fprintf(FILE *stream, char *format[, argument,…]);
        程序例:

        /* Program to create backup of the
           AUTOEXEC.BAT file */

        #include <stdio.h>

        int main(void)
        {
           FILE *in, *out;

           if ((in = fopen(“\AUTOEXEC.BAT”, “rt”))
               == NULL)
           {
              fprintf(stderr, “Cannot open input
               file.n”);
              return 1;
           }

           if ((out = fopen(“\AUTOEXEC.BAK”, “wt”))
               == NULL)
           {
              fprintf(stderr, “Cannot open output
               file.n”);
              return 1;
           }

           while (!feof(in))
              fputc(fgetc(in), out);

           fclose(in);
           fclose(out);
           return 0;
        }
         
         
         

        函數(shù)名: FP_OFF
        功  能: 獲取遠(yuǎn)地址偏移量
        用  法: unsigned FP_OFF(void far *farptr);
        程序例:

        /* FP_OFF */

        #include <dos.h>
        #include <stdio.h>

        int main(void)
        {
           char *str = “fpoff.c”;

           printf(“The offset of this file in memory
                  is: %Fpn”, FP_OFF(str));

           return 0;
        }
         
         

        函數(shù)名: FP_SEG
        功  能: 獲取遠(yuǎn)地址段值
        用  法: unsigned FP_SEG(void far *farptr);
        程序例:

        /* FP_SEG */

        #include <dos.h>
        #include <stdio.h>

        int main(void)
        {
           char *filename = “fpseg.c”;

           printf(“The offset of this file in memory
           is: %Fpn”, FP_SEG(filename));

           return(0);
        }
         
         
         

        函數(shù)名: fputc
        功  能: 送一個(gè)字符到一個(gè)流中
        用  法: int fputc(int ch, FILE *stream);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           char msg[] = “Hello world”;
           int i = 0;

           while (msg[i])
           {
              fputc(msg[i], stdout);
              i++;
           }
           return 0;
        }
         
         
         

        函數(shù)名: fputchar
        功  能: 送一個(gè)字符到標(biāo)準(zhǔn)輸出流(stdout)中
        用  法: int fputchar(char ch);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           char msg[] = “This is a test”;
           int i = 0;

           while (msg[i])
           {
              fputchar(msg[i]);
              i++;
           }
           return 0;
        }
         
         
         

        函數(shù)名: fputs
        功  能: 送一個(gè)字符到一個(gè)流中
        用  法: int fputs(char *string, FILE *stream);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           /* write a string to standard output */
           fputs(“Hello worldn”, stdout);

           return 0;
        }
         
         
         

        函數(shù)名: fread
        功  能: 從一個(gè)流中讀數(shù)據(jù)
        用  法: int fread(void *ptr, int size, int nitems, FILE *stream);
        程序例:

        #include <string.h>
        #include <stdio.h>

        int main(void)
        {
           FILE *stream;
           char msg[] = “this is a test”;
           char buf[20];

           if ((stream = fopen(“DUMMY.FIL”, “w+”))
               == NULL)
           {
              fprintf(stderr,
                      “Cannot open output file.n”);
              return 1;
           }

           /* write some data to the file */
           fwrite(msg, strlen(msg)+1, 1, stream);

           /* seek to the beginning of the file */
           fseek(stream, SEEK_SET, 0);

           /* read the data and display it */
           fread(buf, strlen(msg)+1, 1, stream);
           printf(“%sn”, buf);

           fclose(stream);
           return 0;
        }
         
         

        函數(shù)名: free
        功  能: 釋放已分配的塊
        用  法: void free(void *ptr);
        程序例:

        #include <string.h>
        #include <stdio.h>
        #include <alloc.h>

        int main(void)
        {
           char *str;

           /* allocate memory for string */
           str = malloc(10);

           /* copy “Hello” to string */
           strcpy(str, “Hello”);

           /* display string */
           printf(“String is %sn”, str);

           /* free memory */
           free(str);

           return 0;
        }
         

        函數(shù)名: freemem
        功  能: 釋放先前分配的DOS內(nèi)存塊
        用  法: int freemem(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 < 0)
              printf(“Allocated memory at segment:
              %xn”, segp);
           else
              printf(“Failed: maximum number of
              paragraphs available is %un”,
              stat);
           freemem(segp);

           return 0;
        }
         
         

        函數(shù)名: freopen
        功  能: 替換一個(gè)流
        用  法: FILE *freopen(char *filename, char *type, FILE *stream);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           /* redirect standard output to a file */
           if (freopen(“OUTPUT.FIL”, “w”, stdout)
               == NULL)
              fprintf(stderr, “error redirecting
                      stdoutn”);

           /* this output will go to a file */
           printf(“This will go into a file.”);

           /* close the standard output stream */
           fclose(stdout);

           return 0;
        }
         
         
         

        函數(shù)名: frexp
        功  能: 把一個(gè)雙精度數(shù)分解為尾數(shù)的指數(shù)
        用  法: double frexp(double value, int *eptr);
        程序例:

        #include <math.h>
        #include <stdio.h>

        int main(void)
        {
           double mantissa, number;
           int exponent;

           number = 8.0;
           mantissa = frexp(number, &exponent);

           printf(“The number %lf is “, number);
           printf(“%lf times two to the “, mantissa);
           printf(“power of %dn”, exponent);

           return 0;
        }
         
         

        函數(shù)名: fscanf
        功  能: 從一個(gè)流中執(zhí)行格式化輸入
        用  法: int fscanf(FILE *stream, char *format[,argument…]);
        程序例:

        #include <stdlib.h>
        #include <stdio.h>

        int main(void)
        {
           int i;

           printf(“Input an integer: “);

           /* read an integer from the
              standard input stream */
           if (fscanf(stdin, “%d”, &i))
              printf(“The integer read was: %in”,
                     i);
           else
           {
              fprintf(stderr, “Error reading an
                      integer from stdin.n”);
              exit(1);
           }
           return 0;
        }
         
         
         

        函數(shù)名: fseek
        功  能: 重定位流上的文件指針
        用  法: int fseek(FILE *stream, long offset, int fromwhere);
        程序例:

        #include <stdio.h>

        long filesize(FILE *stream);

        int main(void)
        {
           FILE *stream;

           stream = fopen(“MYFILE.TXT”, “w+”);
           fprintf(stream, “This is a test”);
           printf(“Filesize of MYFILE.TXT is %ld bytesn”, filesize(stream));
           fclose(stream);
           return 0;
        }

        long filesize(FILE *stream)
        {
           long curpos, length;

           curpos = ftell(stream);
           fseek(stream, 0L, SEEK_END);
           length = ftell(stream);
           fseek(stream, curpos, SEEK_SET);
           return length;
        }
         
         
         
         
         

        函數(shù)名: fsetpos
        功  能: 定位流上的文件指針
        用  法: int fsetpos(FILE *stream, const fpos_t *pos);
        程序例:

        #include <stdlib.h>
        #include <stdio.h>

        void showpos(FILE *stream);

        int main(void)
        {
           FILE *stream;
           fpos_t filepos;

           /* open a file for update */
           stream = fopen(“DUMMY.FIL”, “w+”);

           /* save the file pointer position */
           fgetpos(stream, &filepos);

           /* write some data to the file */
           fprintf(stream, “This is a test”);

           /* show the current file position */
           showpos(stream);

           /* set a new file position, display it */
           if (fsetpos(stream, &filepos) == 0)
             showpos(stream);
           else
           {
              fprintf(stderr, “Error setting file
               pointer.n”);
              exit(1);
           }

           /* close the file */
           fclose(stream);
           return 0;
        }

        void showpos(FILE *stream)
        {
           fpos_t pos;

           /* display the current file pointer
              position of a stream */
           fgetpos(stream, &pos);
           printf(“File position: %ldn”, pos);
        }
         

        函數(shù)名: fstat
        功  能: 獲取打開(kāi)文件信息
        用  法: int fstat(char *handle, struct stat *buff);
        程序例:

        #include <sysstat.h>
        #include <stdio.h>
        #include <time.h>

        int main(void)
        {
           struct stat statbuf;
           FILE *stream;

           /* open a file for update */
           if ((stream = fopen(“DUMMY.FIL”, “w+”))
               == NULL)
           {
              fprintf(stderr, “Cannot open output
                      file.n”);
              return(1);
           }
           fprintf(stream, “This is a test”);
           fflush(stream);

           /* get information about the file */
           fstat(fileno(stream), &statbuf);
           fclose(stream);

           /* display the information returned */
           if (statbuf.st_mode & S_IFCHR)
              printf(“Handle refers to a device.n”);
           if (statbuf.st_mode & S_IFREG)
              printf(“Handle refers to an ordinary
                     file.n”);
           if (statbuf.st_mode & S_IREAD)
              printf(“User has read permission on
                     file.n”);
           if (statbuf.st_mode & S_IWRITE)
              printf(“User has write permission on
                      file.n”);

           printf(“Drive letter of file: %cn”,
           ‘A’+statbuf.st_dev);
           printf(“Size of file in bytes: %ldn”,
           statbuf.st_size);
           printf(“Time file last opened: %sn”,
           ctime(&statbuf.st_ctime));
           return 0;
        }
         
         
         

        函數(shù)名: ftell
        功  能: 返回當(dāng)前文件指針
        用  法: long ftell(FILE *stream);
        程序例:

        #include <stdio.h>

        int main(void)
        {
           FILE *stream;

           stream = fopen(“MYFILE.TXT”, “w+”);
           fprintf(stream, “This is a test”);
           printf(“The file pointer is at byte
                  %ldn”, ftell(stream));
           fclose(stream);
           return 0;
        }
         
         
         

        函數(shù)名: fwrite
        功  能: 寫(xiě)內(nèi)容到流中
        用  法: int fwrite(void *ptr, int size, int nitems, FILE *stream);
        程序例:

        #include <stdio.h>

        struct mystruct
        {
          int i;
          char ch;
        };

        int main(void)
        {
           FILE *stream;
           struct mystruct s;

           if ((stream = fopen(“TEST.$$$”, “wb”)) == NULL) /* open file TEST.$$$ */
           {
              fprintf(stderr, “Cannot open output file.n”);
              return 1;
           }
           s.i = 0;
           s.ch = ‘A’;
           fwrite(&s, sizeof(s), 1, stream); /* write struct s to file */
           fclose(stream); /* close file */
           return 0;
        }

         

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 日韩av无码久久精品免费| 亚洲国产精品不卡毛片a在线| 国产精品高清2021在线| 日韩精品内射视频免费观看| 国内精品久久久久久麻豆| 久久91精品国产91久久户| 四虎国产成人永久精品免费| 久久久久国产成人精品亚洲午夜| 精品国产自在在线在线观看| 精品无码一区二区三区亚洲桃色| 男人的天堂精品国产一区| 青草青草久热精品视频在线网站| 狼色精品人妻在线视频| 无码国模国产在线无码精品国产自在久国产 | 国产免费久久精品99久久| 国产精品莉莉欧美自在线线| 国产精品拍天天在线| 少妇精品无码一区二区三区| 亚洲国产精品专区在线观看| 久久五月精品中文字幕| 国产欧美精品一区二区色综合| 人精品影院| 国产精品亚洲专区无码WEB | 欧美精品VIDEOSSEX少妇| 亚洲精品成人区在线观看| 久久久久人妻精品一区三寸蜜桃| 精品国产一区二区三区久久蜜臀| 国产精品hd免费观看| 91嫩草亚洲精品| 99九九精品免费视频观看| 久久精品视频网| 久久九九青青国产精品| 九九99精品久久久久久| 国产日韩欧美精品| 精品国产欧美另类一区| 四虎在线精品视频一二区 | 国产精品一二二区| 久久免费精品视频| 青青青国产依人精品视频| 国产成人精品高清不卡在线| 国产精品一区二区三区99 |