NumPy参考 >NumPy C-API > 系统配置
构建NumPy时,将记录有关系统配置的信息,并使用NumPy的C API将其提供给扩展模块。这些主要定义在中numpyconfig.h
(包含在中
ndarrayobject.h
)。公用符号以前缀NPY_*
。NumPy还提供了一些用于查询有关所使用平台的信息的功能。
对于私有用途,NumPy还在config.h
NumPy包含目录中构造了一个NumPy不会导出的目录(这是使用numpy C API的python扩展将不会看到这些符号),以避免命名空间污染。
该NPY_SIZEOF_{CTYPE}
常数被定义为使得的sizeof信息是提供给预处理器。
NPY_SIZEOF_SHORT
¶sizeof(短)
NPY_SIZEOF_INT
¶sizeof(int)
NPY_SIZEOF_LONG
¶尺寸(长)
NPY_SIZEOF_LONGLONG
¶sizeof(longlong)其中longlong在平台上适当定义。
NPY_SIZEOF_PY_LONG_LONG
¶NPY_SIZEOF_FLOAT
¶sizeof(float)
NPY_SIZEOF_DOUBLE
¶sizeof(双)
NPY_SIZEOF_LONG_DOUBLE
¶sizeof(longdouble)(宏也定义了NPY_SIZEOF_LONGDOUBLE。)
NPY_SIZEOF_PY_INTPTR_T
¶该平台上的指针大小(sizeof(void *))(宏也定义了NPY_SIZEOF_INTP。)
NPY_CPU_X86
¶NPY_CPU_AMD64
¶NPY_CPU_IA64
¶NPY_CPU_PPC
¶NPY_CPU_PPC64
¶NPY_CPU_SPARC
¶NPY_CPU_SPARC64
¶NPY_CPU_S390
¶NPY_CPU_PARISC
¶1.3.0版的新功能。
平台的CPU架构;仅定义了以上一项。
定义于 numpy/npy_cpu.h
NPY_LITTLE_ENDIAN
¶NPY_BIG_ENDIAN
¶NPY_BYTE_ORDER
¶1.3.0版的新功能。
endian.h
GNU Libc宏的可移植替代品。如果为大端,则NPY_BYTE_ORDER
== NPY_BIG_ENDIAN
,对于小端结构类似。
定义于中numpy/npy_endian.h
。
PyArray_GetEndianness
()¶1.3.0版的新功能。
返回当前平台的字节序。其中一个NPY_CPU_BIG
,NPY_CPU_LITTLE
或NPY_CPU_UNKNOWN_ENDIAN
。