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

📄 ff.htm

📁 TC函数详解 TC函数详解 TC函数详解
💻 HTM
📖 第 1 页 / 共 4 页
字号:
        程序例: 
      <p>#include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; /* write a string to standard output */ <br>
        &nbsp;&nbsp; fputs("Hello world\n", stdout); 
      <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: fread <br>
        功&nbsp; 能: 从一个流中读数据 <br>
        用&nbsp; 法: int fread(void *ptr, int size, int nitems, FILE *stream); <br>
        程序例: 
      <p>#include &lt;string.h> <br>
        #include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; FILE *stream; <br>
        &nbsp;&nbsp; char msg[] = "this is a test"; <br>
        &nbsp;&nbsp; char buf[20]; 
      <p>&nbsp;&nbsp; if ((stream = fopen("DUMMY.FIL", "w+")) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; == NULL) <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr, <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        "Cannot open output file.\n"); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 1; <br>
        &nbsp;&nbsp; } 
      <p>&nbsp;&nbsp; /* write some data to the file */ <br>
        &nbsp;&nbsp; fwrite(msg, strlen(msg)+1, 1, stream); 
      <p>&nbsp;&nbsp; /* seek to the beginning of the file */ <br>
        &nbsp;&nbsp; fseek(stream, SEEK_SET, 0); 
      <p>&nbsp;&nbsp; /* read the data and display it */ <br>
        &nbsp;&nbsp; fread(buf, strlen(msg)+1, 1, stream); <br>
        &nbsp;&nbsp; printf("%s\n", buf); 
      <p>&nbsp;&nbsp; fclose(stream); <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: free <br>
        功&nbsp; 能: 释放已分配的块 <br>
        用&nbsp; 法: void free(void *ptr); <br>
        程序例: 
      <p>#include &lt;string.h> <br>
        #include &lt;stdio.h> <br>
        #include &lt;alloc.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; char *str; 
      <p>&nbsp;&nbsp; /* allocate memory for string */ <br>
        &nbsp;&nbsp; str = malloc(10); 
      <p>&nbsp;&nbsp; /* copy "Hello" to string */ <br>
        &nbsp;&nbsp; strcpy(str, "Hello"); 
      <p>&nbsp;&nbsp; /* display string */ <br>
        &nbsp;&nbsp; printf("String is %s\n", str); 
      <p>&nbsp;&nbsp; /* free memory */ <br>
        &nbsp;&nbsp; free(str); 
      <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; 
      <p>函数名: freemem <br>
        功&nbsp; 能: 释放先前分配的DOS内存块 <br>
        用&nbsp; 法: int freemem(unsigned seg); <br>
        程序例: 
      <p>#include &lt;dos.h> <br>
        #include &lt;alloc.h> <br>
        #include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; unsigned int size, segp; <br>
        &nbsp;&nbsp; int stat; 
      <p>&nbsp;&nbsp; size = 64; /* (64 x 16) = 1024 bytes */ <br>
        &nbsp;&nbsp; stat = allocmem(size, &amp;segp); <br>
        &nbsp;&nbsp; if (stat &lt; 0) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Allocated memory at segment:\ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %x\n", segp); <br>
        &nbsp;&nbsp; else <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Failed: maximum number of\ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; paragraphs available is %u\n", <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; stat); <br>
        &nbsp;&nbsp; freemem(segp); 
      <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: freopen <br>
        功&nbsp; 能: 替换一个流 <br>
        用&nbsp; 法: FILE *freopen(char *filename, char *type, FILE *stream); <br>
        程序例: 
      <p>#include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; /* redirect standard output to a file */ <br>
        &nbsp;&nbsp; if (freopen("OUTPUT.FIL", "w", stdout) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; == NULL) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr, "error redirecting\ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        stdout\n"); 
      <p>&nbsp;&nbsp; /* this output will go to a file */ <br>
        &nbsp;&nbsp; printf("This will go into a file."); 
      <p>&nbsp;&nbsp; /* close the standard output stream */ <br>
        &nbsp;&nbsp; fclose(stdout); 
      <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: frexp <br>
        功&nbsp; 能: 把一个双精度数分解为尾数的指数 <br>
        用&nbsp; 法: double frexp(double value, int *eptr); <br>
        程序例: 
      <p>#include &lt;math.h> <br>
        #include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; double mantissa, number; <br>
        &nbsp;&nbsp; int exponent; 
      <p>&nbsp;&nbsp; number = 8.0; <br>
        &nbsp;&nbsp; mantissa = frexp(number, &amp;exponent); 
      <p>&nbsp;&nbsp; printf("The number %lf is ", number); <br>
        &nbsp;&nbsp; printf("%lf times two to the ", mantissa); <br>
        &nbsp;&nbsp; printf("power of %d\n", exponent); 
      <p>&nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: fscanf <br>
        功&nbsp; 能: 从一个流中执行格式化输入 <br>
        用&nbsp; 法: int fscanf(FILE *stream, char *format[,argument...]); <br>
        程序例: 
      <p>#include &lt;stdlib.h> <br>
        #include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; int i; 
      <p>&nbsp;&nbsp; printf("Input an integer: "); 
      <p>&nbsp;&nbsp; /* read an integer from the <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; standard input stream */ <br>
        &nbsp;&nbsp; if (fscanf(stdin, "%d", &amp;i)) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("The integer read was: %i\n", <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        i); <br>
        &nbsp;&nbsp; else <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr, "Error reading an \ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        integer from stdin.\n"); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit(1); <br>
        &nbsp;&nbsp; } <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: fseek <br>
        功&nbsp; 能: 重定位流上的文件指针 <br>
        用&nbsp; 法: int fseek(FILE *stream, long offset, int fromwhere); <br>
        程序例: 
      <p>#include &lt;stdio.h> 
      <p>long filesize(FILE *stream); 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; FILE *stream; 
      <p>&nbsp;&nbsp; stream = fopen("MYFILE.TXT", "w+"); <br>
        &nbsp;&nbsp; fprintf(stream, "This is a test"); <br>
        &nbsp;&nbsp; printf("Filesize of MYFILE.TXT is %ld bytes\n", filesize(stream)); 
        <br>
        &nbsp;&nbsp; fclose(stream); <br>
        &nbsp;&nbsp; return 0; <br>
        } 
      <p>long filesize(FILE *stream) <br>
        { <br>
        &nbsp;&nbsp; long curpos, length; 
      <p>&nbsp;&nbsp; curpos = ftell(stream); <br>
        &nbsp;&nbsp; fseek(stream, 0L, SEEK_END); <br>
        &nbsp;&nbsp; length = ftell(stream); <br>
        &nbsp;&nbsp; fseek(stream, curpos, SEEK_SET); <br>
        &nbsp;&nbsp; return length; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: fsetpos <br>
        功&nbsp; 能: 定位流上的文件指针 <br>
        用&nbsp; 法: int fsetpos(FILE *stream, const fpos_t *pos); <br>
        程序例: 
      <p>#include &lt;stdlib.h> <br>
        #include &lt;stdio.h> 
      <p>void showpos(FILE *stream); 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; FILE *stream; <br>
        &nbsp;&nbsp; fpos_t filepos; 
      <p>&nbsp;&nbsp; /* open a file for update */ <br>
        &nbsp;&nbsp; stream = fopen("DUMMY.FIL", "w+"); 
      <p>&nbsp;&nbsp; /* save the file pointer position */ <br>
        &nbsp;&nbsp; fgetpos(stream, &amp;filepos); 
      <p>&nbsp;&nbsp; /* write some data to the file */ <br>
        &nbsp;&nbsp; fprintf(stream, "This is a test"); 
      <p>&nbsp;&nbsp; /* show the current file position */ <br>
        &nbsp;&nbsp; showpos(stream); 
      <p>&nbsp;&nbsp; /* set a new file position, display it */ <br>
        &nbsp;&nbsp; if (fsetpos(stream, &amp;filepos) == 0) <br>
        &nbsp;&nbsp;&nbsp;&nbsp; showpos(stream); <br>
        &nbsp;&nbsp; else <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr, "Error setting file \ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pointer.\n"); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit(1); <br>
        &nbsp;&nbsp; } 
      <p>&nbsp;&nbsp; /* close the file */ <br>
        &nbsp;&nbsp; fclose(stream); <br>
        &nbsp;&nbsp; return 0; <br>
        } 
      <p>void showpos(FILE *stream) <br>
        { <br>
        &nbsp;&nbsp; fpos_t pos; 
      <p>&nbsp;&nbsp; /* display the current file pointer <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; position of a stream */ <br>
        &nbsp;&nbsp; fgetpos(stream, &amp;pos); <br>
        &nbsp;&nbsp; printf("File position: %ld\n", pos); <br>
        } <br>
        &nbsp; 
      <p>函数名: fstat <br>
        功&nbsp; 能: 获取打开文件信息 <br>
        用&nbsp; 法: int fstat(char *handle, struct stat *buff); <br>
        程序例: 
      <p>#include &lt;sys\stat.h> <br>
        #include &lt;stdio.h> <br>
        #include &lt;time.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; struct stat statbuf; <br>
        &nbsp;&nbsp; FILE *stream; 
      <p>&nbsp;&nbsp; /* open a file for update */ <br>
        &nbsp;&nbsp; if ((stream = fopen("DUMMY.FIL", "w+")) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; == NULL) <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr, "Cannot open output \ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        file.\n"); <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return(1); <br>
        &nbsp;&nbsp; } <br>
        &nbsp;&nbsp; fprintf(stream, "This is a test"); <br>
        &nbsp;&nbsp; fflush(stream); 
      <p>&nbsp;&nbsp; /* get information about the file */ <br>
        &nbsp;&nbsp; fstat(fileno(stream), &amp;statbuf); <br>
        &nbsp;&nbsp; fclose(stream); 
      <p>&nbsp;&nbsp; /* display the information returned */ <br>
        &nbsp;&nbsp; if (statbuf.st_mode &amp; S_IFCHR) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Handle refers to a device.\n"); 
        <br>
        &nbsp;&nbsp; if (statbuf.st_mode &amp; S_IFREG) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("Handle refers to an ordinary \ 
        <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        file.\n"); <br>
        &nbsp;&nbsp; if (statbuf.st_mode &amp; S_IREAD) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("User has read permission on \ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        file.\n"); <br>
        &nbsp;&nbsp; if (statbuf.st_mode &amp; S_IWRITE) <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("User has write permission on \ 
        <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        file.\n"); 
      <p>&nbsp;&nbsp; printf("Drive letter of file: %c\n", <br>
        &nbsp;&nbsp; 'A'+statbuf.st_dev); <br>
        &nbsp;&nbsp; printf("Size of file in bytes: %ld\n", <br>
        &nbsp;&nbsp; statbuf.st_size); <br>
        &nbsp;&nbsp; printf("Time file last opened: %s\n", <br>
        &nbsp;&nbsp; ctime(&amp;statbuf.st_ctime)); <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: ftell <br>
        功&nbsp; 能: 返回当前文件指针 <br>
        用&nbsp; 法: long ftell(FILE *stream); <br>
        程序例: 
      <p>#include &lt;stdio.h> 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; FILE *stream; 
      <p>&nbsp;&nbsp; stream = fopen("MYFILE.TXT", "w+"); <br>
        &nbsp;&nbsp; fprintf(stream, "This is a test"); <br>
        &nbsp;&nbsp; printf("The file pointer is at byte \ <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %ld\n", ftell(stream)); 
        <br>
        &nbsp;&nbsp; fclose(stream); <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; <br>
        &nbsp; <br>
        &nbsp; 
      <p>函数名: fwrite <br>
        功&nbsp; 能: 写内容到流中 <br>
        用&nbsp; 法: int fwrite(void *ptr, int size, int nitems, FILE *stream); 
        <br>
        程序例: 
      <p>#include &lt;stdio.h> 
      <p>struct mystruct <br>
        { <br>
        &nbsp; int i; <br>
        &nbsp; char ch; <br>
        }; 
      <p>int main(void) <br>
        { <br>
        &nbsp;&nbsp; FILE *stream; <br>
        &nbsp;&nbsp; struct mystruct s; 
      <p>&nbsp;&nbsp; if ((stream = fopen("TEST.$$$", "wb")) == NULL) /* open 
        file TEST.$$$ */ <br>
        &nbsp;&nbsp; { <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr, "Cannot open output file.\n"); 
        <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 1; <br>
        &nbsp;&nbsp; } <br>
        &nbsp;&nbsp; s.i = 0; <br>
        &nbsp;&nbsp; s.ch = 'A'; <br>
        &nbsp;&nbsp; fwrite(&amp;s, sizeof(s), 1, stream); /* write struct s to 
        file */ <br>
        &nbsp;&nbsp; fclose(stream); /* close file */ <br>
        &nbsp;&nbsp; return 0; <br>
        } <br>
        &nbsp; 
      <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        <a href="index.html">返回目录</a> <br>
        &nbsp; 
      <p> 
      <p><br>
        <br>
      </p>
      <p>&nbsp; </p>
      <p><span lang=EN-US><br>
        </span></p>
      <!-- #EndEditable --> 
      <p>&nbsp;</p>
      <p align="right"><font color="#FF0000">【<a href="http://abc.yesite.com/cgi-bin/abc.cgi?owner=llamaa">留言簿</a>】

⌨️ 快捷键说明

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