开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 494|回复: 14
收起左侧

[闲聊] DeepSeek能否写易语言

[复制链接]
结帖率:75% (9/12)
发表于 昨天 09:09 | 显示全部楼层 |阅读模式   江苏省常州市
书接上回,之前我发现豆包生成易语言和C++都非常拉跨:https://bbs.ijingyi.com/forum.ph ... 14862784&extra=https://bbs.ijingyi.com/forum.php?mod=viewthread&tid=14862784&extra=
于是我换DeepSeek,试试看能不能写易语言:https://www.bilibili.com/video/BV1agGw6tERq/?spm_id_from=333.1387.homepage.video_card.click&vd_source=c611867b16c2d705c65034a98c60fc1d
你们觉得DeepSeek写得怎么样
结帖率:70% (14/20)

签到天数: 2 天

发表于 昨天 23:52 | 显示全部楼层   河南省郑州市
hcy3988 发表于 2026-8-2 18:51
主要是看什么项目跟提示词把

对,我看它的思考过程基本就是精易论坛抓代码,精易有的它就会写,没有的估计就不会了
回复 支持 反对

使用道具 举报

结帖率:70% (14/20)

签到天数: 2 天

发表于 昨天 23:48 | 显示全部楼层   河南省郑州市
苏轶 发表于 2026-8-2 19:08
你的代码存在错误:置转化进度 程序_延时都不存在

它默认用了精易模块吧,还写了个置转化进度,就是调试输出让我看
回复 支持 反对

使用道具 举报

结帖率:98% (39/40)

签到天数: 1 天

发表于 昨天 23:28 | 显示全部楼层   广东省揭阳市
Autolinker
回复 支持 反对

使用道具 举报

签到天数: 2 天

发表于 昨天 22:37 | 显示全部楼层   天津市天津市
要不看看我最近帖子?
回复 支持 反对

使用道具 举报

结帖率:88% (7/8)

签到天数: 1 天

发表于 昨天 21:26 | 显示全部楼层   福建省南平市
得看有没有用易语言代码训练,大概率是没有的其实,与其说拿易语言代码训练,不如把易语言核心库和他底层的c代码联系起来用RAG做知识库,通过prompt+lint语法检查约束输出范式
回复 支持 反对

使用道具 举报

结帖率:75% (9/12)

签到天数: 1 天

 楼主| 发表于 昨天 19:08 | 显示全部楼层   江苏省常州市
qck易语言 发表于 2026-8-2 18:42
deepseek可以写,这是我让它帮我写的匿名管道,图片+音乐合成视频带进度条的

[e=0].版本 2

你的代码存在错误:置转化进度 程序_延时都不存在
回复 支持 反对

使用道具 举报

结帖率:75% (9/12)

签到天数: 1 天

 楼主| 发表于 昨天 19:06 | 显示全部楼层   江苏省常州市
qck易语言 发表于 2026-8-2 18:42
deepseek可以写,这是我让它帮我写的匿名管道,图片+音乐合成视频带进度条的

[e=0].版本 2

我试试看能不能用
为啥我的就不行呢https://www.bilibili.com/video/BV1agGw6tERq/?spm_id_from=333.1387.homepage.video_card.click&vd_source=c611867b16c2d705c65034a98c60fc1d
回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 2 天

发表于 昨天 18:51 | 显示全部楼层   山东省菏泽市
qck易语言 发表于 2026-8-2 18:42
deepseek可以写,这是我让它帮我写的匿名管道,图片+音乐合成视频带进度条的

[e=0].版本 2

主要是看什么项目跟提示词把
回复 支持 反对

使用道具 举报

结帖率:70% (14/20)

签到天数: 2 天

发表于 昨天 18:42 | 显示全部楼层   河南省郑州市
deepseek可以写,这是我让它帮我写的匿名管道,图片+音乐合成视频带进度条的

  
子程序名返回值类型公开备 注
执行FFmpeg逻辑型 
参数名类 型参考可空数组备 注
命令行文本文本型
最终输出文本型
退出码整数型
图片目录文本型
变量名类 型静态数组备 注
安全属性SECURITY_ATTRIBUTES 
启动信息STARTUPINFO 
进程信息PROCESS_INFORMATION 
hRead整数型 
hWrite整数型 
缓冲区字节集 
已读字节整数型 
可用字节整数型 
当前文本文本型 
完整输出文本型 
循环计数整数型 
行缓冲字节集 
换行位置整数型 
完整行字节集 
剩余缓冲字节集 
错误码整数型 
退出码临时整数型 
置转化进度 (“=== 开始执行FFmpeg ===”)
置转化进度 (“命令行: ” + 命令行文本)
安全属性.nLength = 12
安全属性.lpSecurityDescriptor = 0
安全属性.bInheritHandle = 真
如果真 (CreatePipe (hRead, hWrite, 安全属性, 0))
置转化进度 (“创建管道失败!”)
返回 ()
置转化进度 (“管道创建成功”)
启动信息.cb = 68
启动信息.dwFlags = 位或 ( #STARTF_USESHOWWINDOW, #STARTF_USESTDHANDLES )
启动信息.wShowWindow = #SW_HIDE
启动信息.hStdOutput = hWrite
启动信息.hStdError = hWrite
如果真 (CreateProcess (0, 取运行目录 ()“\ffmpeg.exe ” + 命令行文本, 0, 0, 真, 0, 0, 0, 启动信息, 进程信息))
置转化进度 (“创建进程失败,错误码=”到文本 (GetLastError ()))
CloseHandle (hRead)
CloseHandle (hWrite)
返回 ()
置转化进度 (“进程创建成功”)
CloseHandle (hWrite)
置转化进度 (“父进程写句柄已关闭”)
行缓冲 = {  }
循环计数 = 0
完整输出 = “”
退出码 = 0
判断循环首 ()
循环计数 = 循环计数 + 1
如果 (循环计数 % 10 = 0)
置转化进度 (“循环次数: ”到文本 (循环计数))



PeekNamedPipe (hRead, 0, 0, 0, 可用字节, 0)
如果 (可用字节 > 0)
置转化进度 (“管道有数据,大小=”到文本 (可用字节))
缓冲区 = 取空白字节集 (可用字节)
如果 (ReadFile_ (hRead, 缓冲区, 可用字节, 已读字节, 0))
' ---------- 读取成功,处理数据 ----------
置转化进度 (“ReadFile_ 成功,读取了 ”到文本 (已读字节)“ 字节”)
如果 (已读字节 > 0)
行缓冲 = 行缓冲 + 取字节集左边 (缓冲区, 已读字节)
判断循环首 ()
换行位置 = 寻找字节集 (行缓冲, { 10 }, )
如果 (换行位置 = -1)
跳出循环 ()
完整行 = 取字节集左边 (行缓冲, 换行位置 - 1)
剩余缓冲 = 取字节集右边 (行缓冲, 取字节集长度 (行缓冲) - 换行位置 - 1)
当前文本 = 取字节集数据 (完整行, #文本型, )  ' 若为UTF-8请替换为编码转换
完整输出 = 完整输出 + 当前文本 + #换行符
行缓冲 = 剩余缓冲

判断循环尾 ()
置转化进度 (“ReadFile 读取了0字节”)
调试输出 (当前文本)

' ---------- 读取失败,处理错误 ----------
错误码 = GetLastError ()
置转化进度 (“ReadFile_ 失败,错误码=”到文本 (错误码))
如果 (错误码 = 109)  ' 管道已关闭
' 1. 立即获取进程退出码
置转化进度 (“管道已关闭,等待进程结束...”)
WaitForSingleObject (进程信息.进程句柄, #INFINITE )
GetExitCodeProcess (进程信息.进程句柄, 退出码)
置转化进度 (“进程退出码=”到文本 (退出码))
' 2. 尝试读取管道中可能残留的最后数据
PeekNamedPipe (hRead, 0, 0, 0, 可用字节, 0)
如果 (可用字节 > 0)
置转化进度 (“发现残留数据,大小=”到文本 (可用字节))
缓冲区 = 取空白字节集 (可用字节)
如果 (ReadFile_ (hRead, 缓冲区, 可用字节, 已读字节, 0))
置转化进度 (“残留数据读取成功,大小=”到文本 (已读字节))
如果 (已读字节 > 0)
行缓冲 = 行缓冲 + 取字节集左边 (缓冲区, 已读字节)
' 切分完整行
判断循环首 ()
换行位置 = 寻找字节集 (行缓冲, { 10 }, )
如果 (换行位置 = -1)
跳出循环 ()
完整行 = 取字节集左边 (行缓冲, 换行位置 - 1)
剩余缓冲 = 取字节集右边 (行缓冲, 取字节集长度 (行缓冲) - 换行位置 - 1)
当前文本 = 取字节集数据 (完整行, #文本型, )
完整输出 = 完整输出 + 当前文本 + #换行符
行缓冲 = 剩余缓冲

判断循环尾 ()



置转化进度 (“残留数据读取失败,放弃”)

置转化进度 (“管道已空,无残留数据”)

' 3. 处理行缓冲中最后不完整的行(无换行符)
如果 (取字节集长度 (行缓冲) > 0)
置转化进度 (“处理最后剩余的行(无换行符)”)
当前文本 = 取字节集数据 (行缓冲, #文本型, )
完整输出 = 完整输出 + 当前文本
行缓冲 = {  }



跳出循环 ()  ' 管道已关闭,结束循环
' 其他错误,直接退出
置转化进度 (“非预期错误,退出循环”)
跳出循环 ()


' 管道无数据,检查进程状态
GetExitCodeProcess (进程信息.进程句柄, 退出码临时)
如果 (退出码临时 ≠ #STILL_ACTIVE )
置转化进度 (“进程已正常退出,退出码=”到文本 (退出码临时))
' 处理最后未换行的数据
如果 (取字节集长度 (行缓冲) > 0)
置转化进度 (“处理进程退出前的最后数据”)
当前文本 = 取字节集数据 (行缓冲, #文本型, )
完整输出 = 完整输出 + 当前文本
行缓冲 = {  }


退出码 = 退出码临时
跳出循环 ()
' 进程仍在运行,等待
程序_延时 (10, )


判断循环尾 ()
置转化进度 (“循环结束,共循环 ”到文本 (循环计数)“ 次”)
' 安全清理
如果真 (退出码 = 0)  ' 若循环意外跳出未获取退出码,则再次尝试
WaitForSingleObject (进程信息.进程句柄, 5000)
GetExitCodeProcess (进程信息.进程句柄, 退出码)

CloseHandle (hRead)
CloseHandle (进程信息.进程句柄)
CloseHandle (进程信息.线程句柄)
置转化进度 (“资源已释放,最终退出码=”到文本 (退出码))
最终输出 = 完整输出
返回 (退出码 = 0)


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

回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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