2016-06-14 93 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