结构体
GLibByteArray
描述 [源代码]
struct GByteArray {
guint8* data;
guint len;
}
包含 GByteArray 的公有字段。
结构成员
data
指向元素数据的指针。当元素添加到 GByteArray 时,数据可能会移动。
len
GByteArray 中的元素数量。
函数
g_byte_array_free
释放 GByteArray 分配的内存。如果 free_segment 为 TRUE,则释放实际字节数据。如果 array 的引用计数大于 1,GByteArray 包装器将被保留,但 array 的大小将设置为 0。
g_byte_array_new_take
创建一个包含 data 的字节数组。此调用后,data 属于 GByteArray,调用者不能再对其进行修改。data 的内存必须动态分配,最终将用 g_free() 释放。
自:2.32
g_byte_array_remove_index_fast
从 GByteArray 中移除给定索引处的字节。数组中的最后一个元素用于填充空间,所以此函数不会保留 GByteArray 的顺序。但它比 g_byte_array_remove_index() 快。
g_byte_array_sized_new
创建一个新的 GByteArray,预先分配 reserved_size 字节。如果你要向数组添加许多字节,这可以避免频繁的重新分配。但请注意,数组的大小仍然是 0。
g_byte_array_sort
对一个字节数组进行排序,使用 compare_func
,该函数应为 qsort()-style 比较函数(第一个参数小于第二个参数时返回小于 0,相等时返回 0,第一个参数大于第二个参数时返回大于 0)。