开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 930|回复: 11
收起左侧

[已解决] 大佬帮忙看看这个是什么原因!

 关闭 [复制链接]
结帖率:100% (42/42)
发表于 2023-1-14 20:58:41 | 显示全部楼层 |阅读模式   湖南省永州市
100精币
TEST.e (4.25 KB, 下载次数: 14)

最佳答案

查看完整内容

写到内存栈堆异常 局_数据数组2 是自定义数据类型 他不能这样子写内存 补充内容 (2023-1-14 21:30): 那个是数组 你那样子相当于 覆盖指针 函数退出自动释放内存 访问到 异常指针导致闪退 补充内容 (2023-1-14 21:34): 对了 你没修改数组长度 那就是 覆盖 其他数据 导致的异常

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
发表于 2023-1-14 20:58:42 | 显示全部楼层   广西壮族自治区南宁市
写到内存栈堆异常 局_数据数组2 是自定义数据类型 他不能这样子写内存

补充内容 (2023-1-14 21:30):
那个是数组 你那样子相当于 覆盖指针 函数退出自动释放内存 访问到 异常指针导致闪退

补充内容 (2023-1-14 21:34):
对了 你没修改数组长度 那就是 覆盖  其他数据 导致的异常
回复

使用道具 举报

结帖率:100% (42/42)

签到天数: 6 天

 楼主| 发表于 2023-1-14 21:29:50 | 显示全部楼层   湖南省永州市
bysy 发表于 2023-1-14 21:28
写到内存栈堆异常 局_数据数组2 是自定义数据类型 他不能这样子写内存

那要如何解决或者如何写,是可以写进去,就是长度超过16 就容易卡住~~有时候不会卡住,有时候会!
回复

使用道具 举报

发表于 2023-1-14 21:33:06 | 显示全部楼层   广西壮族自治区南宁市
eyyhs 发表于 2023-1-14 21:29
那要如何解决或者如何写,是可以写进去,就是长度超过16 就容易卡住~~有时候不会卡住,有时候会! ...

为什么要那样子写
你本地复制完全可以

局_数据数组2=局_数据数组
因为他们数据一样
回复

使用道具 举报

结帖率:100% (42/42)

签到天数: 6 天

 楼主| 发表于 2023-1-14 21:35:30 | 显示全部楼层   湖南省永州市
bysy 发表于 2023-1-14 21:33
为什么要那样子写
你本地复制完全可以

肯定是开发需求,需要保留完整数组信息 通过网络交互给服务器去处理的,分割字节集的方式效率太低下所以得使用字节集的方式,
回复

使用道具 举报

发表于 2023-1-14 21:39:44 | 显示全部楼层   广西壮族自治区南宁市
eyyhs 发表于 2023-1-14 21:35
肯定是开发需求,需要保留完整数组信息 通过网络交互给服务器去处理的,分割字节集的方式效率太低下所以 ...

所以你想 自定义数据结构到字节集 然后发送到客户Duan吗?
回复

使用道具 举报

结帖率:100% (42/42)

签到天数: 6 天

 楼主| 发表于 2023-1-14 21:42:40 | 显示全部楼层   湖南省永州市
bysy 发表于 2023-1-14 21:39
所以你想 自定义数据结构到字节集 然后发送到客户Duan吗?

是的,而且服务端处理完毕 还需要发送回来,开发需要 这种方式效率是最高的,所以选择这种方式!
回复

使用道具 举报

结帖率:100% (42/42)

签到天数: 6 天

 楼主| 发表于 2023-1-14 21:48:53 | 显示全部楼层   湖南省永州市
bysy 发表于 2023-1-14 21:28
写到内存栈堆异常 局_数据数组2 是自定义数据类型 他不能这样子写内存

补充内容 (2023-1-14 21:30):

所以有没有解决办法呢?
回复

使用道具 举报

发表于 2023-1-14 22:06:36 | 显示全部楼层   广西壮族自治区南宁市
  
子程序名返回值类型公开备 注
子程序1  
变量名类 型静态数组备 注
data数据0
data2数据 
i整数型 
bin字节集 
p整数型 
m  
i2整数型 
目前长度整数型 
i3整数型 
计次循环首 (10, i)
data2.文本 = 到文本 (i)
data2.字节集 = { 255, 255, 255, 255, 255, 255 }
data2.整数 = i
data2.长整数 = i
data2.双精度 = i
加入成员 (data, data2)
计次循环尾 ()
m = 1024 × 1024  ' 1M缓存空间
bin = 取空白字节集 (m)
p = 取变量数据地址 (bin)
计次循环首 (取数组成员数 (data), i)
i2 = 取文本长度 (data [i].文本)
i3 = 取字节集长度 (data [i].字节集)
如果真 (目前长度 + i2 + i3 + 28 > m)  ' 整数4 长整数 8 双精度 8 2个表示长度 一共28
bin = bin + 取空白字节集 (1024 × 1024)  ' 获取 申请新 内存 目标长度没变化
m = m + 1024 × 1024
p = 取变量数据地址 (bin)

写到内存 (i2, p + 目前长度, )  ' 将文本长度写到内存
目前长度 = 目前长度 + 4
写到内存 (data [i].文本, p + 目前长度, )  ' 将文本写到内存
目前长度 = 目前长度 + i2
写到内存 (i3, p + 目前长度, )  ' 将字节集长度写到内存
目前长度 = 目前长度 + 4
写到内存 (data [i].字节集, p + 目前长度, )  ' 将字节集写到内存
目前长度 = 目前长度 + i3
写到内存 (data [i].整数, p + 目前长度, )
目前长度 = 目前长度 + 4
写到内存 (data [i].长整数, p + 目前长度, )
目前长度 = 目前长度 + 8
写到内存 (data [i].双精度, p + 目前长度, )
目前长度 = 目前长度 + 8  ' 这里想要加是 数据长度
计次循环尾 ()
bin = 取字节集中间 (bin, 1, 目前长度)
' 这个bin可以发服务器
' 本地
清除数组 (data)
目前长度 = 1  ' 字节集取数据要从1 开始
计次循环首 (10, i)
i2 = 取字节集数据 (bin, #整数型, 目前长度)
data2.文本 = 到文本 (取字节集中间 (bin, 目前长度, i2))
目前长度 = 目前长度 + i2
i2 = 取字节集数据 (bin, #整数型, 目前长度)
data2.字节集 = 取字节集中间 (bin, 目前长度, i2)
目前长度 = 目前长度 + i2
data2.整数 = 取字节集数据 (bin, #整数型, 目前长度)
data2.长整数 = 取字节集数据 (bin, #长整数型, 目前长度)
data2.双精度 = 取字节集数据 (bin, #双精度小数型, 目前长度)
加入成员 (data, data2)
计次循环尾 ()
计次循环首 (10, i)
调试输出 (“文本”, data [i].文本, “字节集”, data [i].字节集, data [i].整数, data [i].长整数, data [i].双精度)
计次循环尾 ()


i支持库列表   支持库注释   
spec特殊功能支持库

补充内容 (2023-1-14 22:08):
实际上 文本型可以在字符串尾部 补充个0 也是可以的

评分

参与人数 1好评 +1 精币 +1 收起 理由
eyyhs + 1 + 1 新技能已get√

查看全部评分

回复

使用道具 举报

结帖率:100% (42/42)

签到天数: 6 天

 楼主| 发表于 2023-1-14 22:20:25 | 显示全部楼层   湖南省永州市
bysy 发表于 2023-1-14 22:06
[e=0].版本 2
.支持库 spec

很感谢,不过这样的写法,不太适合我,我目前考虑的是 把数据拆分保持16长度,这样可以避免卡住的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表