C _OSByteOrder.h:49:1:错误:此处不允许函数定义

C _OSByteOrder.h:49:1:错误:此处不允许函数定义,c,xcode7-beta5,C,Xcode7 Beta5,我包括dyld.h以提供函数_NSGetExecutablePath() 这将为OS X 10.10的可执行文件提供路径 但是当在C编译中包含dyld.h时,我得到以下错误: /usr/include/libkern/i386/_OSByteOrder.h:49:1:错误:此处不允许函数定义 上述信息之前的信息包括: 在testCode.c:11中包含的文件中: 在/usr/include/mach-o/dyld.h:31中包含的文件中: 在/usr/include/mach-o/loader.

我包括dyld.h以提供函数_NSGetExecutablePath() 这将为OS X 10.10的可执行文件提供路径

但是当在C编译中包含dyld.h时,我得到以下错误:

/usr/include/libkern/i386/_OSByteOrder.h:49:1:错误:此处不允许函数定义


上述信息之前的信息包括: 在testCode.c:11中包含的文件中: 在/usr/include/mach-o/dyld.h:31中包含的文件中: 在/usr/include/mach-o/loader.h:48中包含的文件中:在/usr/include/architecture/byte_order.h:38中包含的文件中

似乎dyld.h启动了一列包含,并以错误结束。
有人知道使用dyld.h或_NSGetExecutablePath()的要求吗?

上述消息之前的消息是:包含在testCode的文件中。c:11:包含在/usr/include/mach-o/dyld的文件中。h:31:包含在/usr/include/mach-o/loader的文件中。h:48:包含在/usr/include/architecture/byte_order的文件中。h:38:请编辑您的原始问题,您添加到注释中的内容被切断。显示错误周围的代码-这听起来像是源代码中的一个简单语法错误,例如将#include包装在main中。Petesh是正确的。我发现语法错误正是他所怀疑的。非常感谢。