Matlab中什么函数可以自动终止正在运行的程序

Matlab中什么函数可以自动终止正在运行的程序,第1张

假如是循环的话,其实很简单,用if进行一个判断
你的停止的回调函数里面改变if要判断的量是否为停止的信息就行
给你举个例子
if flag==1
break;
end
你的flag初始化时1,在停止按钮里面设置为0即可
flag作为一个全局变量即可!

在matlab编程中,有时候会遇到死循环或者其他情况程序运行不完,在这时就要强行终止程序的运行,以前一直都是用任务管理器强行关matlab,但是这样比较麻烦,今天查了一下,原来很简单ctrl+c或者ctrl+break都行!

只需要在linux的命令行下执行:
matlab
-nodesktop
-nosplash
-r

你的程序的名字”
(前提是matlab所在的目录在你的PATH变量包含的目录中)

可以考虑这样修改:

h=surf(peaks);%随机一个三维图形
axis vis3d;%使用3D视图
for i=1:200;%设定旋转循环次数
    try get(h,'type');catch,break,end
    camorbit(3,0);%每次旋转角度
    drawnow;%刷新图像
    pause(002);%每次循环暂停002秒
end;%结束

基本思想:每次循环先试图验证图形对象仍然还在,如果不在就退出循环。

if x~=0
后面的程序
end
如果程序在文件中(不是直接复制到command window中运行),也可以这样写
if x==0
return;
end
后面的程序

在这里可以运用continue语句,因为continue表示直接进入该层的下一层迭代。
实现代码如下:

拓展说明:
Matlab中有关控制循环的有三个命令,break,continue和return。
1 使用break 退出循环 可以使用break 语句直接强行退出循环,忽略循环体中任何其他语句和循环条件测试。在循环中遇到break语句时,循环被终止,程序控制在循环后面语句重新开始。

例如 ,如果for 循环被设计为从 0执行到99,然后输出0到99这些数字,但是当i等于10时,break语句终止程序。所以程序只会输出0到10。
在一系列嵌套循环中使用break 语句时,它将仅仅终止最里面循环。

2 而continue则停止执行当前的反复,然后退回循环起始和,开始新的反复。continue 用于跳过循环体中的一部分语句,也就是不执行这部分语句 。

3 return语句用来明确地从一个方法返回。也就是,return 语句使程序控制返回到调用它方法。因此,将它分类为跳转语句。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13106409.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存