C语言函数—farcoreleft

函数名

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: %Fsn", fptr); 

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

   return 0; 
} 
  
  
  

如果引用本站的原创文章,请注明原文链接:,本站保留追究责任的权利!
评论已关闭。