2016-06-14 90 views

回答

1

C实现与non-flat address spaces架构,通常有那些two pointer "classes"

  • 近指针存储内存段内的偏移
  • 远指针,其另外指定哪些段

许多编译使用非标准的__far说明符来实现后者。 16位x86曾经是这样一种架构。

但Cygwin仅适用于Windows的32位x86和x86_64版本。对那些人来说,再也没有近远指针的概念。

为了编译你的代码,你将需要去掉__fars,并希望代码本身不是太紧密coupled到你原来的架构。

+0

谢谢,你如何建议__far被删除?你建议使用什么替代方法而不是__far来使用? – kimondoe

+1

只需删除它。例如用'-D__far =“”'编译。 – a3f