huidong

首页 | 会员登录 | 关于争取 2022 寒假做出汇东网 Ver3.0.0 !
搜索文章


项目下载:


Ver 1:DynamicString.zip

Ver 2:DynamicString_Ver2.zip

Ver 2.1 :DynamicString_Ver2.1.zip

Ver 2.2 :DynamicString_Ver2.2.zip


VS2019 x86 + win7 编译通过



更新日志


Ver 1


Ver 2 将 PDString 改名为了 PString,增加少许函数。


Ver 2.1 进行了部分优化,修复已知bug,使用了malloc代替了new


Ver 2.2 区别了isEmptyDynString函数(内容是否为空)和isNullDynString函数(地址是否为空)



各个函数用法详细请见源文件(DynamicString.cpp)


示例代码(Ver 1):

#include "DynamicString.h"

int main()
{
    // 新建动态数组
    PDString str;
    str = NewDynString();

    // 写入字符串
    DynStringAddString(str, "hello world.");
    // 写入字符
    DynStringAddChar(str, '\n');

    printf(str->pStr);

    // 清空字符串
    if (!ClearDynString(str))
    {
        printf("error \n");
    }


    for (int i = 0; i < 20; i++)
    {
        // 写入字符串(带可变参)
        DynStringAddString(str, 64, "[ line : %d ]    [ DynString ]xxx", i);

        // 删除末尾的三个字符
        DelDynString(str, 3);

        // 写入字符
        DynStringAddChar(str, '\n');
    }

    printf(str->pStr);

    printf("\n----------\n");

    // 重设动态数组大小为27个字节,即只保留前27个字节的内容
    ResizeDynString(str, 27);

    printf(str->pStr);
    printf("\n");

    // 释放动态数组
    FreeDynString(str);

    return 0;
}


效果:

图片.png




返回首页


Copyright (C) 2018-2024 huidong