Python PyArray_BOOL声明&;在C扩展中使用布尔的Numpy数组

Python PyArray_BOOL声明&;在C扩展中使用布尔的Numpy数组,python,numpy,python-c-api,Python,Numpy,Python C Api,我的代码中有一个布尔的NumPy数组,我希望为它编写一个C扩展。 当我试图获取连续数组以便在我的C例程中使用时,我使用: arr_mask = (PyArrayObject *) PyArray_ContiguousFromObject(mask, PyArray_BOOL, 2, 2); 但是我得到一个编译器错误,PyArray\u BOOL没有声明 xor_masking.c:44:40: error: ‘PyArray_BOOL’ undeclared (first use in

我的代码中有一个布尔的NumPy数组,我希望为它编写一个C扩展。 当我试图获取连续数组以便在我的C例程中使用时,我使用:

arr_mask = (PyArrayObject *)
    PyArray_ContiguousFromObject(mask, PyArray_BOOL, 2, 2);
但是我得到一个编译器错误,PyArray\u BOOL没有声明

xor_masking.c:44:40: error: ‘PyArray_BOOL’ undeclared (first use in this function)
为什么会这样?这种类型没有申报吗?如果是这样,我如何将布尔数组引入C


谢谢

您需要使用NPY\u BOOL而不是PyArray\u BOOL。此外,如果您仍然像在其他问题中一样使用数字标题,则需要使用numpy标题而不是数字标题。

您需要使用NPY\u BOOL而不是PyArray\u BOOL。此外,如果您仍像在其他问题中一样使用数字标题,则需要使用numpy标题而不是数字标题