|
发表于 2023-3-16 21:59:01
|
显示全部楼层
广西壮族自治区崇左市
|
数组_合并_快速 | 文本型 | | |
欲处理的数组 | 文本型 | | | | 间隔符 | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | pArr | 整数型 | | | len | 整数型 | | | i | 整数型 | | | bufSize | 整数型 | | | pBuf | 整数型 | | | pSub | 整数型 | | | nSub | 整数型 | | | offset | 整数型 | | | strLen | 整数型 | | | pStr | 整数型 | | | nStr | 整数型 | | | pTmp | 整数型 | | | tmpSize | 整数型 | | | ret | 文本型 | | |
len = 取数组成员数 (欲处理的数组 )如果真 (len = 0 )返回 (“”)pArr = 取数据_通用型_数组 (欲处理的数组)
bufSize = len × 260 pBuf = malloc (bufSize + 1 ) 如果真 (取反 (是否为空 (间隔符 )) ) pSub = 取指针_文本型 (间隔符 )如果真 (pSub ≠ 0 ) nSub = strlen (pSub )计次循环首 (len, i )pStr = __get (pArr, (i - 1 ) × 4 ) 如果真 (pStr ≠ 0 )nStr = strlen (pStr ) 如果真 (offset + nStr > bufSize ) 数组_合并_快速_重新分配内存 (pBuf, bufSize, nStr )memcpy (pBuf + offset, pStr, nStr )offset = offset + nStr 如果真 (pSub ≠ 0 且 i < len )如果真 (offset + nSub > bufSize )数组_合并_快速_重新分配内存 (pBuf, bufSize, nSub )memcpy (pBuf + offset, pSub, nSub )offset = offset + nSub 计次循环尾 ()__set_byte (pBuf, offset, 0 ) ret = 指针到文本 (pBuf )free (pBuf )返回 (ret )|
数组_合并_快速_重新分配内存 | | | |
pBuf | 整数型 | | | | bufSize | 整数型 | | | | dataSize | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | tmpSize | 整数型 | | | pTmp | 整数型 | | |
tmpSize = bufSize bufSize = bufSize × 2 + dataSize pTmp = malloc (bufSize )memcpy (pTmp, pBuf, tmpSize ) free (pBuf )pBuf = pTmp
@项目部004 原来的命令改成这两个命令 |
|