⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 02

📁 一个类STL的多平台可移植的算法容器库,主要用于嵌入式系统编程时的内存管理等方面
💻
📖 第 1 页 / 共 2 页
字号:
                                 size_t index,
                                 size_t old_count,
                                 const void* src,
                                 size_t new_count )
功能
    将 [index, index + old_count) 替换为 [src, src + new_count)。
参数
    self:指向一个已初始化的 dymemarray;
    index:替换开始位置的索引;
    old_count:从 index 开始被替换的元素个数;
    src:待替换的数组首地址;
    new_count:将要被替换的 src 数组的元素个数。
返回值
    函数执行成功返回 true,失败返回 false。
备注
    如果 new_count = old_count,则只执行元素替换操作;
    如果 new_count < old_count,则先执行元素替换操作,再删除多余的元素;
    如果 new_count > old_count,则先执行元素替换操作,再插入余下的元素。
    若 src 等于 NULL,则 [index, index + new_count) 之间的元素值将处于未定义状态。

********************************************************************************

19、bool dymemarr_empty( dymemarray* self )
功能
    判断 dymemarray 是否为空。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    如果 dymemarray 为空返回 true,否则返回 false。

********************************************************************************

20、size_t dymemarr_max_size( dymemarray* self )
功能
    获取硬件所能支持的 dymemarray 存储的最大元素个数。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回 dymemarray 能够存储的最大元素个数。

********************************************************************************

21、size_t dymemarr_size( dymemarray* self )
功能
    获取 dymemarray 存储的元素个数。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回 dymemarray 当前存储的元素个数。

********************************************************************************

22、size_t dymemarr_capacity( dymemarray* self )
功能
    获取 dymemarray 的容量。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回 dymemarray 当前能够存储的最大元素个数。

********************************************************************************

23、size_t dymemarr_space( dymemarray* self )
功能
    获取 dymemarray 剩余的容量。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回 dymemarray 当前还能存储的元素个数。

********************************************************************************

24、void* dymemarr_begin( dymemarray* self )
功能
    获取 dymemarray 首端元素的地址。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回 dymemarray 首端元素的地址。

********************************************************************************

25、void* dymemarr_end( dymemarray* self )
功能
    获取 dymemarray 尾端的地址。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回 dymemarray 尾端的地址。
备注
    尾端就是 dymemarray 最后一个有效元素的末尾,首端和尾端以一个半闭半开的区间来
    表示 dymemarray 的有效范围:[dymemarr_begin, dymemarr_end)。

********************************************************************************

26、void* dymemarr_front( dymemarray* self )
功能
    获取第一个元素的地址。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回第一个元素的地址。

********************************************************************************

27、void* dymemarr_back( dymemarray* self )
功能
    获取最后一个元素的地址。
参数
    self:指向一个已初始化的 dymemarray。
返回值
    返回最后一个元素的地址。

********************************************************************************

28、void* dymemarr_index( dymemarray* self,
                          size_t index )
功能
    获取 index 处元素的地址。
参数
    self:指向一个已初始化的 dymemarray;
    index:待访问的元素的索引。
返回值
    返回指定的元素的地址。
备注
    函数不会对 index 的值进行越界检查,如果 index >= dymemarr_size(self),返回的
    地址指向的元素将处于未定义状态。

********************************************************************************

29、void* dymemarr_at( dymemarray* self,
                       size_t index )
功能
    获取 index 处元素的地址。
参数
    self:指向一个已初始化的 dymemarray;
    index:待访问的元素的索引。
返回值
    如果 index < dymemarr_size(self),则返回指定的元素的地址;否则返回 NULL。
备注
    函数会对 index 的值进行越界检查,所以速度会比 dymemarr_index 稍慢。

********************************************************************************
********************************************************************************

                                   内  联  宏

********************************************************************************
********************************************************************************

30、DYMEMARR_BEGIN( ARRAY, TYPE )
功能
    dymemarr_begin 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    返回一个 TYPE 类型的指针,其指向 dymemarray 的首端元素。

********************************************************************************

31、DYMEMARR_END( ARRAY, TYPE )
功能
    dymemarr_end 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    返回一个 TYPE 类型的指针,其指向 dymemarray 的尾端元素。

********************************************************************************

32、DYMEMARR_FRONT( ARRAY, TYPE )
功能
    dymemarr_front 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    返回一个 TYPE 类型的值,其值等于 dymemarray 第一个元素的值。

********************************************************************************

33、DYMEMARR_BACK( ARRAY, TYPE )
功能
    dymemarr_back 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    返回一个 TYPE 类型的值,其值等于 dymemarray 最后一个元素的值。

********************************************************************************

34、DYMEMARR_INDEX( ARRAY, INDEX, TYPE )
功能
    dymemarr_index 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    INDEX:待访问的元素的索引;
    TYPE:dymemarray 中元素的类型。
返回值
    返回一个 TYPE 类型的值,其值等于 dymemarray 第 INDEX 个元素的值。

********************************************************************************

35、DYMEMARR_SIZE( ARRAY, TYPE )
功能
    dymemarr_size 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    同 dymemarr_size。

********************************************************************************

36、DYMEMARR_CAPACITY( ARRAY, TYPE )
功能
    dymemarr_capacity 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    同 dymemarr_capacity。

********************************************************************************

37、DYMEMARR_SPACE( ARRAY, TYPE )
功能
    dymemarr_space 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    同 dymemarr_space。

********************************************************************************

38、DYMEMARR_TO_STRING( ARRAY, END_OF_STR, TYPE )
功能
    dymemarr_to_string 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    END_OF_STR:指向一个字符串的结束符,可以为 NULL;
    TYPE:dymemarray 中元素的类型。
返回值
    无。

********************************************************************************

39、DYMEMARR_POP_BACK( ARRAY, TYPE )
功能
    dymemarr_pop_back 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    TYPE:dymemarray 中元素的类型。
返回值
    同 dymemarr_pop_back。

********************************************************************************

40、DYMEMARR_PUSH_BACK( ARRAY, VAL, TYPE, BOOLVAL )
功能
    dymemarr_push_back 函数的内联宏。
参数
    ARRAY:一个已初始化的 dymemarray 实体;
    VAL:待插入的元素值;
    TYPE:dymemarray 中元素的类型,
    BOOLVAL:记录插入状态的 bool 值,插入成功该值为 true,否则为 false。
返回值
    无。

********************************************************************************

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -