登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
1
2
/ 2 页
下一页
返回列表
首页
›
资源区
›
代码
›
PLC结构化文本(ST)——AND_THEN & OR_ELSE ...
PLC结构化文本(ST)——AND_THEN & OR_ELSE
[ 复制链接 ]
箝德孜
2025-6-5 15:40:55
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
PLC Structured Text Object Oriented Programming
PLC结构化文本(ST)——AND_THEN & OR_ELSE
特殊机制
运算符AND_THEN和OR_ELSE与我们常用的AND和OR功能相同却有点区别。
IF FALSE AND calculate() THEN
Auto.Run();
END_IF
复制代码
假如IF前一个条件一直为FALSE那么后一个条件calculate()仍然会继续执行,得出结果。当然Auto.Run()不会继续执行。
IF TRUE OR calculate() THEN
Auto.Run();
END_IF
复制代码
假如IF前一个条件一直为TRUE那么后一个条件calculate()仍然会继续执行,返回BOOL值得出结果。
上述这两种情况,对于IF条件语句使用运算符AND来说,只要有一个条件是FALSE整条判断语句结果就为FALSE,同样对于使用运算符OR来说,只要有一个条件为TRUE整条判断语句结果就为TRUE。后一个条件就没必要继续运行判断直接执行下一个语句即可。
把上面程序中的运算符AND和OR替换成AND_THEN和OR_ELSE。
IF FALSE AND_THEN calculate() THEN
Auto.Run();
END_IF
复制代码
由于IF条件语句第一个条件是FALSE所以使用AND_THEN运算符后calculate()方法/函数/程序并不会进入执行,也就是说当检测到第一个条件为FALSE时条件判断提前返回结果FALSE。
IF TRUE OR_ELSE calculate() THEN
Auto.Run();
END_IF
复制代码
同理,条件语句使用的是OR_ELSE运算符,结果提前返回TRUE,并且calculate()不参与执行。
如何使用
既然我们已经了解运算符AND_THEN & OR_ELSE的特殊机制。是否可以用来简化代码?提高计算机运行效率?
简化代码
IF bCondition1 THEN // 条件1
IF bCondition2 THEN // 条件2
IF bCondition3 THEN // 条件3
Auto.Run();
END_IF
END_IF
END_IF
复制代码
使用AND
IF bCondition1 AND bCondition2 AND bCondition3 THEN
Auto.Run();
END_IF
复制代码
使用AND_THEN
IF bCondition1 AND_THEN bCondition2 AND_THEN bCondition3 THEN
Auto.Run();
END_IF
复制代码
多个IF条件嵌套使用,代码结构复杂,使用AND_THEN简化之后在同一行形成一个IF条件,代码清晰简洁。
IF ptrMachine <> 0 THEN // ptrMachine 是一个指针
IF NOT ptrMachine^.IsAutoRun() THEN
Auto.Run();
END_IF
END_IF
复制代码
不能
使用AND运算符简化
// 这是一个错误示例
IF ptrMachine <> 0 AND NOT ptrMachine^.IsAutoRun() THEN
Auto.Run();
END_IF
复制代码
无论这个表达式ptrMachine 0结果是什么,后面的表达式ptrMachine^.IsAutoRun()都会被执行,如果指针是空引用则会导致指针空引用异常。
IF ptrMachine <> 0 AND_THEN NOT ptrMachine^.IsAutoRun() THEN
Auto.Run();
END_IF
复制代码
如果指针(ptrMachine)为空(null),IF的第一个条件ptrMachine 0不成立返回FALSE判断直接退出
不执行
ptrMachine^.IsAutoRun()表达式。如果指针不为空,两个判断条件均执行,并且不会出现空指针异常。
总结
合理使用OR、AND、OR_ELSE、AND_THEN运算符,而且OR和OR_ELSE并
不是
可以随意替换使用的,同理AND和AND_THEN也是如此。一切要以自身程序需求来判断使用合适的运算符。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
PLC
结构化
文本
ST
AND
相关帖子
前端技巧:检测到省略号文本自动显示 Tooltip
前端技巧:检测到省略号文本自动显示 Tooltip
CF1032F Vasya and Maximum Matching 题解
Marek and Matching (hard version) 题解
用户单击文本并复制至剪帖板
用户单击文本并复制至剪帖板
从KMP到BM:文本编辑器查找算法的进化之路
从纯文本到精美文档:TXT 转 PDF 的三种高效方案
如何通过 C# 实现 PDF 文本提取?
文本生成任务评估指标
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
前端技巧:检测到省略号文本自动显示 Tooltip
13
58
毡轩
2026-01-21
安全
前端技巧:检测到省略号文本自动显示 Tooltip
16
56
佟棠华
2026-01-21
安全
CF1032F Vasya and Maximum Matching 题解
11
864
菅舛
2026-01-28
安全
Marek and Matching (hard version) 题解
7
195
仟仞
2026-02-06
代码
用户单击文本并复制至剪帖板
10
59
觐有
2026-02-09
代码
用户单击文本并复制至剪帖板
6
50
圄旧剖
2026-02-09
业界
从KMP到BM:文本编辑器查找算法的进化之路
5
339
呵烘稿
2026-02-26
安全
从纯文本到精美文档:TXT 转 PDF 的三种高效方案
1
736
注思
2026-02-27
业界
如何通过 C# 实现 PDF 文本提取?
3
141
褥师此
2026-03-02
安全
文本生成任务评估指标
0
471
刘凤
2026-03-10
回复
(35)
羔迪
2025-11-2 09:01:02
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
前排留名,哈哈哈
讣丢
2025-12-21 10:20:28
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
新版吗?好像是停更了吧。
兜蛇
2026-1-2 01:59:04
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
懂技术并乐意极积无私分享的人越来越少。珍惜
拼匍弦
2026-1-4 14:58:45
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
前排留名,哈哈哈
猷浮
2026-1-12 07:27:36
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享,下载保存了,貌似很强大
廖雯华
2026-1-12 13:33:30
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
不错,里面软件多更新就更好了
橘芜
2026-1-15 09:05:26
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
鼓励转贴优秀软件安全工具和文档!
艾曼语
2026-1-16 08:59:16
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
很好很强大 我过来先占个楼 待编辑
闻人莹华
2026-1-17 17:23:37
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
这个好,看起来很实用
撒阗奕
2026-1-18 15:11:54
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢楼主提供!
跑两獗
2026-1-18 20:07:07
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
热心回复!
梨恐
2026-1-19 23:13:30
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
这个好,看起来很实用
敖雨燕
2026-1-27 03:35:36
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
东西不错很实用谢谢分享
呶募妙
2026-1-30 02:24:27
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
分享、互助 让互联网精神温暖你我
福清婉
2026-1-30 06:37:47
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享,下载保存了,貌似很强大
砂歹汤
2026-2-4 05:52:31
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
yyds。多谢分享
巫雪艷
2026-2-4 10:23:43
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
收藏一下 不知道什么时候能用到
廖彗云
2026-2-5 04:45:27
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享,下载保存了,貌似很强大
喳谍
2026-2-7 05:51:01
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢分享,下载保存了,貌似很强大
下一页 »
1
2
/ 2 页
下一页
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
科技
签约作者
程序园优秀签约作者
发帖
箝德孜
2026-2-7 05:51:01
关注
0
粉丝关注
22
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991125
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9522
6
韶又彤
9912
7
宋子
9878
8
荪俗
9016
9
闰咄阅
9995
10
刎唇
9995
查看更多
今日好文热榜
214
从车载HMI到数字座舱平台:基于Qt与Qtitan
649
彻底告别OpenClaw使用焦虑:我给他装上了“
631
PingCraft:从需求文档到可追踪工作项的 Ag
774
【译】 数据摄取构建模块简介(预览版)(二
923
【故障公告】数据库服务器磁盘 MBPS 高造成
746
"Memory in the Age of AI Agents: A Surve
217
Prompt 焚诀——一个模板,终结你和 AI 的
516
【节点】[SampleTexture3D节点]原理解析与
168
记一次Webshell流量分析 | 添柴不加火
981
旧安卓手机部署openclaw
638
AI编程时代,35岁以上程序员将何去何从?
831
[Refactor]CPP Learn Data Day 1
5
Block Copy 的内存布局详解
620
把 Flask 搬进 ESP32,高中生自研嵌入式 We
9
渐得如意智能自动化办公平台——定义属于你
892
[AI/Agent/社交] AI Agent社交网络产品:Mo
528
C++协程入门
288
TCSSOFTDEPTCOPY.zip Can download source
805
Vue3 + Iframe 实战:打造企业级流程配置中
825
“你用AI,那我也会用AI,我还要你干什么?