| 热门文章 |
 |
|
| 编辑推荐 |
 |
|
|
|
|
|
作者:佚名
来源:不详 点击: 更新:2006-12-19
|
|
函数名: fabs 功 能: 返回浮点数的绝对值 用 法: double fabs(double x); 程序例: #include <stdio.h> #include <math.h>
int main(void) { float number = -1234.0;
printf("number: %f absolute value: %f\n", number, fabs(number)); return 0; }
函数名: farcalloc 功 能: 从远堆栈中申请空间 用 法: 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: %Fs\n", fptr);
/* free the memory */ farfree(fptr);
return 0; }
函数名: farcoreleft 功 能: 返回远堆中未作用存储区大小 用 法: long farcoreleft(void); 程序例:
#include <stdio.h> #include <alloc.h>
int main(void) { printf("The difference between the\ highest allocated block in the\ far\n"); printf("heap and the top of the far heap\ is: %lu bytes\n", farcoreleft());
return 0; }
函数名: farfree 功 能: 从远堆中释放一块 用 法: 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: %Fs\n", fptr);
/* free the memory */ farfree(fptr);
return 0; }
函数名: farmalloc 功 能: 从远堆中分配存储块 用 法: 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: %Fs\n", fptr);
/* free the memory */ farfree(fptr);
return 0; }
函数名: farrealloc 功 能: 调整远堆中的分配块 用 法: 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: %Fp\n", fptr); fptr = farrealloc(fptr,20); printf("New address : %Fp\n", fptr); farfree(fptr); return 0; }
函数名: fclose 功 能: 关闭一个流 用 法: 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; }
函数名: fcloseall 功 能: 关闭打开流 用 法: 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; }
函数名: fcvt 功 能: 把一个浮点数转换为字符串 用 法: 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 = %d\n", string, dec, sign);
value = -123.45; ndig= 15; string = ecvt(value,ndig,&dec,&sign); printf("string = %s dec = %d sign = %d\n", string, dec, sign);
value = 0.6789e5; /* scientific notation */ ndig = 5; string = ecvt(value,ndig,&dec,&sign); printf("string = %s dec = %d\ sign = %d\n", string, dec, sign);
return 0; }
函数名: fdopen 功 能: 把流与一个文件句柄相接 用 法: FILE *fdopen(int handle, char *type); 程序例:
#include <sys\stat.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 failed\n"); else { fprintf(stream, "Hello world\n"); fclose(stream); } return 0; }
函数名: feof 功 能: 检测流上的文件结束符 用 法: 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-file\n");
/* close the file */ fclose(stream); return 0; }
函数名: ferror 功 能: 检测流上的错误 用 法: 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.FIL\n");
/* reset the error and EOF indicators */ clearerr(stream); }
fclose(stream); return 0; }
函数名: fflush 功 能: 清除一个流 用 法: 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); }
函数名: 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; }
函数名: 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; }
函数名: fgetpos 功 能: 取得当前文件的句柄 用 法: 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 po[1] [2] [3] 下一页
|
|
|