字節(jié)數(shù)組對(duì)象?

PyByteArrayObject?

這個(gè) PyObject 的子類型表示一個(gè) Python 字節(jié)數(shù)組對(duì)象。

PyTypeObject PyByteArray_Type?

Python bytearray 類型表示為 PyTypeObject 的實(shí)例;這與Python層面的 bytearray 是相同的對(duì)象。

類型檢查宏?

int PyByteArray_Check(PyObject?*o)?

當(dāng)對(duì)象 o 是一個(gè)字節(jié)數(shù)組對(duì)象而且是一個(gè)字節(jié)數(shù)組類型的子類型實(shí)例時(shí),返回真。

int PyByteArray_CheckExact(PyObject?*o)?

當(dāng)對(duì)象 o 是一個(gè)字節(jié)數(shù)組對(duì)象,但不是一個(gè)字節(jié)數(shù)組類型的子類型實(shí)例時(shí),返回真。

直接 API 函數(shù)?

PyObject* PyByteArray_FromObject(PyObject?*o)?
Return value: New reference.

根據(jù)任何實(shí)現(xiàn)了 緩沖區(qū)協(xié)議 的對(duì)象 o,返回一個(gè)新的字節(jié)數(shù)組對(duì)象。

PyObject* PyByteArray_FromStringAndSize(const char?*string, Py_ssize_t?len)?
Return value: New reference.

根據(jù) string 及其長度 len 創(chuàng)建一個(gè)新的 bytearray 對(duì)象。 當(dāng)失敗時(shí)返回 NULL

PyObject* PyByteArray_Concat(PyObject?*a, PyObject?*b)?
Return value: New reference.

連接字節(jié)數(shù)組 ab 并返回一個(gè)帶有結(jié)果的新的字節(jié)數(shù)組。

Py_ssize_t PyByteArray_Size(PyObject?*bytearray)?

在檢查 NULL 指針后返回 bytearray 的大小。

char* PyByteArray_AsString(PyObject?*bytearray)?

在檢查 NULL 指針后返回將 bytearray 返回為一個(gè)字符數(shù)組。 返回的數(shù)組總是會(huì)附加一個(gè)額外的空字節(jié)。

int PyByteArray_Resize(PyObject?*bytearray, Py_ssize_t?len)?

bytearray 的內(nèi)部緩沖區(qū)的大小調(diào)整為 len

?

這些宏減低安全性以換取性能,它們不檢查指針。

char* PyByteArray_AS_STRING(PyObject?*bytearray)?

C函數(shù) PyByteArray_AsString() 的宏版本。

Py_ssize_t PyByteArray_GET_SIZE(PyObject?*bytearray)?

C函數(shù) PyByteArray_Size() 的宏版本。