|
|
|
| 字节集_解析 | 整数型 | | |
| 参_字节集 | 字节集 | | | | 参_分隔符 | 字节集 | | | | 参_行位置数组 | 整数型 | | | | 参_行长度数组 | 整数型 | | | |
| 变量名 | 类 型 | 静态 | 数组 | 备 注 | | 局_源指针 | 整数型 | | | | 局_源长度 | 整数型 | | | | 局_分隔长度 | 整数型 | | | | 局_总行数 | 整数型 | | | | 局_当前位置 | 整数型 | | | | 局_行位置 | 整数型 | | |
局_源指针 = 取变量数据地址 (参_字节集 )局_源长度 = 取字节集长度 (参_字节集 )局_分隔长度 = 取字节集长度 (参_分隔符 )局_当前位置 = 1 局_总行数 = 0 重定义数组 (参_行位置数组, 假, 0 )重定义数组 (参_行长度数组, 假, 0 ) 判断循环首 (局_当前位置 ≤ 局_源长度 ) 局_行位置 = 局_当前位置  判断循环首 (局_当前位置 ≤ 局_源长度 且 参_字节集 [局_当前位置 ] ≠ 13 )  局_当前位置 = 局_当前位置 + 1  判断循环尾 () 如果真 (局_当前位置 > 局_源长度 ) 跳出循环 ()   局_总行数 = 局_总行数 + 1 加入成员 (参_行位置数组, 局_源指针 + 局_行位置 - 1 ) 加入成员 (参_行长度数组, 局_当前位置 - 局_行位置 ) 如果真 (局_当前位置 ≤ 局_源长度 且 参_字节集 [局_当前位置 ] = 13 )  局_当前位置 = 局_当前位置 + 1   如果真 (局_当前位置 ≤ 局_源长度 且 参_字节集 [局_当前位置 ] = 10 )   局_当前位置 = 局_当前位置 + 1      判断循环尾 ()返回 (局_总行数 )| 变量名 | 类 型 | 静态 | 数组 | 备 注 | | 局_前区行位置 | 整数型 | | 0 | | 局_前区行长度 | 整数型 | | 0 | | 局_后区行位置 | 整数型 | | 0 | | 局_后区行长度 | 整数型 | | 0 | | 局_字符 | 字节集 | | | | 局_总长度 | 整数型 | | | | 局_前区总数 | 整数型 | | | | i | 整数型 | | | | 局_后区总数 | 整数型 | | | | n | 整数型 | | | | 局_字节集 | 字节集 | | | | 局_写入指针 | 整数型 | | | | 局_换行符 | 字节集 | | | | 局_字符地址 | 整数型 | | | | 局_换行符地址 | 整数型 | | | | 局_前区字节集 | 字节集 | | | | 局_后区字节集 | 字节集 | | | | 启动时间 | 双精度小数型 | | |
启动时间 = 取启动时间 ()局_字符 = { 32 } 局_换行符 = { 13, 10 } 局_前区字节集 = 到字节集 (集_文本1 )局_后区字节集 = 到字节集 (集_文本2 )局_前区总数 = 字节集_解析 (局_前区字节集, 局_换行符, 局_前区行位置, 局_前区行长度 )局_后区总数 = 字节集_解析 (局_后区字节集, 局_换行符, 局_后区行位置, 局_后区行长度 )局_字符地址 = 取变量数据地址 (局_字符 )局_换行符地址 = 取变量数据地址 (局_换行符 )局_总长度 = 0 计次循环首 (局_前区总数, i ) 计次循环首 (局_后区总数, n )  局_总长度 = 局_总长度 + 局_前区行长度 [i ] + 1 + 局_后区行长度 [n ] + 2  计次循环尾 () 计次循环尾 ()局_字节集 = 取空白字节集 (局_总长度 )局_写入指针 = 取变量数据地址 (局_字节集 ) 计次循环首 (局_前区总数, i ) 计次循环首 (局_后区总数, n ) RtlMoveMemory (局_写入指针, 局_前区行位置 [i ], 局_前区行长度 [i ])  局_写入指针 = 局_写入指针 + 局_前区行长度 [i ] RtlMoveMemory (局_写入指针, 局_字符地址, 1 )  局_写入指针 = 局_写入指针 + 1  RtlMoveMemory (局_写入指针, 局_后区行位置 [n ], 局_后区行长度 [n ])  局_写入指针 = 局_写入指针 + 局_后区行长度 [n ] RtlMoveMemory (局_写入指针, 局_换行符地址, 2 )  局_写入指针 = 局_写入指针 + 2  计次循环尾 () 计次循环尾 () 调试输出 (“字节集长度:” + 到文本 (取字节集长度 (局_字节集 )) )调试输出 (“耗时:” + 到文本 (取启动时间 () - 启动时间 ) + “ms”)调试输出 (“组合数:” + 到文本 (局_前区总数 × 局_后区总数 ))
补充内容 (2026-6-30 18:19):
* “字节集长度:8786000”
* “耗时:156ms”
* “组合数:1000000” |
|