注册 登录
编程论坛 VB6论坛

请问对一维数组排序报溢出堆栈空间错误怎么修改?——结贴后续问

ictest 发布于 2023-02-21 22:26, 935 次点击
前辈们好,还有一个问题想请教一下:
在我提供的数据CSV里有很多参数,除去b(19)列外,我还需要对我还要分别对b(18)列,b(22)列,b(15)列,b(13)列,b(11)列分别读到数组a2_sj、a3_sj、a4_sj、a5_sj、a6_sj里,大约每个数组里有20万条数据,然后每个数组进行排序,然后输出到各个不同的文件里,程序里会重复调用排序语句语句:

qsort a1_sj(1), num, LenB(a4_sj(1)), AddressOf Comparator


qsort a2_sj(1), num, LenB(a4_sj(1)), AddressOf Comparator


qsort a3_sj(1), num, LenB(a4_sj(1)), AddressOf Comparator


qsort a4_sj(1), num, LenB(a4_sj(1)), AddressOf Comparator


qsort a5_sj(1), num, LenB(a4_sj(1)), AddressOf Comparator


qsort a6_sj(1), num, LenB(a4_sj(1)), AddressOf Comparator


大约在排序输出第一个数组后程序就似乎进入循环假死状态,请问这种情况怎么处理?

具体详见我的程序
只有本站会员才能查看附件,请 登录


恳请前辈们能够协助解决
1 回复
#2
冬瓜汤2023-02-21 23:31
你这不是代码的问题,你这是工具选择的问题,我看过你的csv,用excel不超过1分钟,就能搞定你所有的数据,结果你写了好几天的代码。如果你后续要频繁使用这些数据,你应该将有用的数据,转成 数据库呀(如access或sqlite)。
这样的效率远远比你 这样写代码高效太多太多了。听我一句劝把数据 用excel 整理一下,放在数据库中。
你真正要花精力的是 矩阵库(如c的矩阵库或c++的矩阵库(但最好有提供 c导出函数的调用),这样子你才有办法在vb6中调用这些矩阵库),这才是cdecl补丁 最能发挥功能的地方(因为你不可能找得到vb写或activeX版的矩阵库)。这才是你真正要花精力的地方。我的直觉是你搞不定矩阵运算,你的矩阵图很难完成。


[此贴子已经被作者于2023-2-21 23:48编辑过]

1