C语言库函数(F类字母)
C语言库函数(F类字母)
C语言库函数(F类字母)
函数名: fabs
功 能: 返回浮点数的绝对值
用 法: double fabs(double x);
程序例:
#include
#include
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
#include
#include
#include
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
#include
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
#include
#include
#include
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