我们知道PyObject_AsReadBuffer在version2.5中已更改。
在v2.4上,我们可以像这样使用它,
int bufferLength = 0;
const void* buffer = NULL;
PyObject_AsReadBuffer(pyObj, &buffer, &buffer_len);
但是我必须像这样修改它才能在v2.7上运行,
Py_ssize_t bufferLength = 0;
const void* buffer = NULL;
PyObject_AsReadBuffer(pyObj, &buffer, &buffer_len);
如果我想同时在v2.4和v2.7上运行它,该怎么办?
最佳答案
在include / python2.7 / patchlevel.h中
#define PY_MAJOR_VERSION 2
#define PY_MINOR_VERSION 7
因此我们可以使用PY_MAJOR_VERSION PY_MINOR_VERSION来比较版本
关于python - PyObject_AsReadBuffer移植问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22035780/