窗口程序集名 | 保 留 | 保 留 | 备 注 |
窗口程序集_启动窗口 | | | |
arr =
{ “1234567890123456123456789012345612345678901234561234567890123456”,
“1234567890123456” }调试输出 (数组_合并 (arr,
“<->”))
|
数组_合并 | 文本型 | |
|
cs_数组 | 文本型 | | | |
cs_分隔符 | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 |
count | 整数型 | | |
sptlen | 整数型 | | |
size | 整数型 | | |
p | 整数型 | | |
pos | 整数型 | | |
i | 整数型 | | |
len | 整数型 | | |
temp | 文本型 | | |
count =
取数组成员数 (cs_数组
) sptlen =
取文本长度 (cs_分隔符
) + 1
size = 16 × count p =
申请内存 (size,
)计次循环首 (count, i
)len =
取文本长度 (cs_数组
[i
])如果真 (pos + len + sptlen > size
) size = size × 2
调试输出 (“不够了,重分配”) 如果真 (pos + len + sptlen > size
) size = pos + len + sptlen
调试输出 (“*2依然不够,分配刚好满足的内存”)p = api_LocalReAlloc (p, size, 2)
写到内存 (cs_数组 [i], p + pos, len)写到内存 (cs_分隔符, p + pos + len, sptlen
)pos = pos + len + sptlen - 1
计次循环尾 ()如果真 (pos ≠ 0
)写到内存 (0, p + pos - sptlen + 1, 1
) temp = 指针到文本 (p)释放内存 (p
)返回 (temp
)