关于远指针的问题,求助
2608 2003-05-06 11:41:43 我使用的是c++ 3.1
如下定义:
void far *point;
point = (void far *)farmalloc(size);
farfree(point);
运行后farmalloc()无法申请到内存,无论size是多小的值
后来改用malloc()申请,这样可以,依然用farfree()来释放内存,
但是这样在一个循环中反复运行几次以后,point的值就会变成dataseg@这样
的内容,这是否就是操作系统的越界保护,为什么会有这种情况呢,然后
c++就会退出到os下,并且有提示说cup遇到无法编译的指令,
但是如果将 point 改称近程指针,并用malloc(),free(),这样一切正常
我不知道为什么,望能给予解答