unistd.h
我的Ubuntu Linux中有几个文件。我一上来/usr/include/asm/unistd.h
。该文件具有以下指令:
# ifdef __i386__
# include "unistd_32.h"
# else
# include "unistd_64.h"
# endif
在该文件夹中,我可以找到这些文件(unistd_32.h
和unistd_64.h
)。
但是/usr/src/linux-headers-2.6.31-22/include/asm-generic/
还有另一个unistd.h
以该指令开头的:
#if !defined(_ASM_GENERIC_UNISTD_H) || defined(__SYSCALL)
#define _ASM_GENERIC_UNISTD_H
所以,问题是:我怎么知道加载了哪一个?有什么方法可以在运行时使用Java进行检查吗?
@Riccardo我想进行一些在该文件中定义的系统调用。
—
santiago.basulto 2010年
@ user1531头文件是编译的第一步,因此在运行时不需要它们(您可以在未安装编译器或开发环境的系统上运行代码)。从Java调用C函数是一个完全不同的问题的主题-您似乎已经问过了:-)
—
Riccardo Murri 2010年
unistd.h
C头文件;它与Java有什么关系?