令人困惑的问题,高分求教,路过的进来看一下吧

madgod 2009-05-12 05:35:03
问题是这样的,单步调试程序时,发现代码会被跳过,没有被执行,因为源码在不联网的机器上,所以没有办法贴出来,以下用伪码描述一下问题,原本的代码也很简单的,就30行左右,也只是做了一些简单的数据操作而已。
另外,代码只是被跳过了而已,程序没有抛出异常也没有挂掉,仍然继续正常运行,只是每次走到这个地方都是一样的,会跳过代码;
代码很简单,中间也没有跳转的语句,很困惑。

Procedure XXX.proc1(param1,param2....)
Var
...
Begin
语句1;
语句2;
if(b1) then Exit;
...
语句m; ----------执行到这里还是好的

Proc2(x,y); -----------进入proc2,从proc2跳出后直接跳到proc1的结束处

语句n1;
if(b1) then Exit;
语句n2;
End; -----------从proc2跳出后直接到这里,语句n1和n2都没有执行

Procedure XXX.proc2(param1,param2)
Var
...
Begin
for i:=0 to 5-1 do
begin
语句a1;
...
end;
End; --------------进入Proc2后直接跳转到此处,未执行循环,a1一次都没有到过,for i:=0 to 5-1 do也没有到过,一进过程就直接到这里了
...全文
148 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
madgod 2009-05-13
  • 打赏
  • 举报
回复
呃,看了大家的回复,觉得思路开阔了一些,但是似乎不是stack overflow的问题,
因为程序还能够正常执行下去,只是这些跳过的代码就跟没写一样。今天一天在线,希望路过的朋友继续关注一下,谢谢大家!
Seamour 2009-05-12
  • 打赏
  • 举报
回复
或者是stack overflow?没注意过这种情况编译器会怎么处理
Seamour 2009-05-12
  • 打赏
  • 举报
回复
to写成downto了?
delphi的编译还没聪明到把没用代码都优化掉的程度,连空循环都不优化掉
justin_wkf 2009-05-12
  • 打赏
  • 举报
回复
應該是for循環出現問題
sparklerl 2009-05-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 SuperTitan001 的回复:]
有可能编译器认为你的proc2中的for循环中的语句执行不执行是一样的,也就是说for循环中产生的变量或其它变化对后面的程序没有影响,所以直接跳过,优化了
查查for循环的语句看看,可以看看for循环中的语句是否可以设置断点,如果不能就肯定是优化了,呵呵
[/Quote]
up
shuihan20e 2009-05-12
  • 打赏
  • 举报
回复
肯定是自己写错了,解决方法就是仔细找原因,或者把原来的代码推倒,重写
ahjoe 2009-05-12
  • 打赏
  • 举报
回复
考虑 优化 与 堆栈破坏
sqrkim 2009-05-12
  • 打赏
  • 举报
回复
SuperTitan001 说的有道理。
mdejtod 2009-05-12
  • 打赏
  • 举报
回复
会不会是proc2中出了啥问题?
改为function试试看能不能回到原调处继续运行
SuperTitan001 2009-05-12
  • 打赏
  • 举报
回复
有可能编译器认为你的proc2中的for循环中的语句执行不执行是一样的,也就是说for循环中产生的变量或其它变化对后面的程序没有影响,所以直接跳过,优化了
查查for循环的语句看看,可以看看for循环中的语句是否可以设置断点,如果不能就肯定是优化了,呵呵
sqrkim 2009-05-12
  • 打赏
  • 举报
回复
还是得靠自己找。。。。没看出来哪有毛病
liangpei2008 2009-05-12
  • 打赏
  • 举报
回复
对于这种灵异事件,无解~
内容概要:本文围绕“基于改进秃鹰算法的微电网群经济优化调度”展开研究,利用Matlab代码实现优化算法的仿真与复现。研究重点在于通过改进的秃鹰搜索算法(Bald Eagle Search Algorithm, BESA)解决微电网群在运行过程中的经济调度问题,提升算法的收敛速度与全局寻优能力,以实现对分布式能源、储能系统及负荷的高效协调管理。文中详细阐述了微电网群的系统架构、数学建模过程、目标函数设计(如运行成本最小化、碳排放降低等),并结合智能优化算法进行求解,验证了改进算法相较于传统方法在调度精度和效率方面的优越性。同时,研究还探讨了算法在多场景下的适应性,为微电网群的智能化、低碳化运行提供了技术支持与实践参考。; 适合人群:具备一定电力系统基础知识和Matlab编程能力的研究生、科研人员及从事微电网、智能优化算法相关工作的工程技术人员。; 使用场景及目标:① 学习并掌握改进秃鹰算法在复杂优化问题中的应用方法;② 实现微电网群经济调度模型的构建与求解;③ 对比不同智能算法在电力系统优化中的性能表现;④ 为科研论文复现、课题研究或工程项目提供算法支持与代码参考。; 阅读建议:建议读者结合文中提供的Matlab代码逐模块分析,重点关注算法改进策略与调度模型的耦合实现方式,同时可尝试在不同参数设置或场景条件下进行仿真实验,以加深对算法性能与调度效果的理解。
内容概要:本文围绕多旋翼无人机姿态估计算法的开发与性能评估展开系统性研究,重点对比了线性与非线性滤波算法在复杂飞行环境下的表现。通过构建基于扩展卡尔曼滤波(EKF)、无迹卡尔曼滤波(UKF)等先进算法的姿态估计器,融合IMU、磁力计、视觉传感器等多源数据,有效提升了姿态解算的精度与鲁棒性。研究涵盖了静态悬停、高速机动及磁干扰等多种典型飞行场景,利用MATLAB/Simulink平台完成仿真实验,并结合实测飞行数据与VICON高精度运动捕捉系统提供的真值进行定量分析。结果表明,非线性滤波器在动态工况下具有显著优势,尤其在抑制漂移和抵抗外部干扰方面优于传统线性方法。文章还提出了传感器融合、自适应建模、冗余配置等一系列降低偏差影响的技术路径,为高可靠性无人机导航系统的设计提供了理论依据与实践指导。; 适合人群:具备控制理论、信号处理及状态估计基础知识,从事无人机导航、控制算法研发或相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于开发高精度无人机姿态解算模块;②为多传感器融合算法的设计、实现与验证提供参考案例;③服务于复杂环境下无人系统状态估计的教学演示与科研攻关; 阅读建议:建议结合文中所述MATLAB/Simulink仿真模型与实测数据集进行复现与调试,重点关注EKF与UKF的数学推导、实现细节及关键参数调优过程,深入理解非线性系统建模、状态估计与工程实际之间的平衡与折衷。

16,741

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧