System configuration¶
当构建NumPy时,记录有关系统配置的信息,并使用NumPy的C API提供给扩展模块。这些主要在numpyconfig.h
中定义(包括在ndarrayobject.h
中)。公共符号前缀为NPY_*
。NumPy还提供了一些查询有关所使用平台信息的功能。
对于私人使用,NumPy还在NumPy包含目录中构造一个config.h
,它不是由NumPy导出的(即使用numpy C API不会看到这些符号的python扩展),避免命名空间污染。
Data type sizes¶
定义NPY_SIZEOF_{CTYPE}
常量,以便信息sizeof可用于预处理器。
-
NPY_SIZEOF_SHORT
¶
-
NPY_SIZEOF_INT
¶
-
NPY_SIZEOF_LONG
¶
-
NPY_SIZEOF_LONGLONG
¶ sizeof(longlong)其中longlong在平台上适当定义。
-
NPY_SIZEOF_PY_LONG_LONG
¶
-
NPY_SIZEOF_FLOAT
¶
-
NPY_SIZEOF_DOUBLE
¶
-
NPY_SIZEOF_LONG_DOUBLE
¶
-
NPY_SIZEOF_PY_INTPTR_T
¶ 此平台上的指针大小(sizeof(void *))(宏也定义NPY_SIZEOF_INTP)。
Platform information¶
-
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中的新功能。
便携式替代GNU Libc的
endian.h
宏。如果是big endian,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
中的一个。