我需要为OS X 10.6(Snow Leopard)或更高版本编写DLL(dynalib,无论如何)DLL读取和写入二进制文件。 (这是该公司的专有格式。)它将被所有Cocoa(AFIK)的应用程序使用。一切都只有64位。
从阅读Apple的文档,书籍和在这里提问,我仍然没有一个清晰而自信的想法来处理二进制文件。我的印象是我不能使用标准的unix / C fopen(),fread()或open(),read()等。或者我可以,但我会遇到麻烦。这是真的?我应该使用别的东西,还有什么?
答案 0 :(得分:1)
我的印象是我无法使用标准的unix / C fopen(),fread() 或open(),read()等。
操作系统完全支持POSIX / BSD个性。随意编写符合标准的C。
Foundation Kit具有Objective-C类和可以使用的消息(NSData
,NSFile
等),但是它们通常更难以使用,尤其是当您在平台之间维护可移植代码时。与直接C(所有高级语言共享的特征)相比,Objective-C的副作用更容易逆向工程。
根据您图书馆的需求,您可以考虑将其包装到框架中而不是裸体dylib
。