登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
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
相关帖子
CF1032F Vasya and Maximum Matching 题解
Marek and Matching (hard version) 题解
用户单击文本并复制至剪帖板
用户单击文本并复制至剪帖板
从KMP到BM:文本编辑器查找算法的进化之路
从纯文本到精美文档:TXT 转 PDF 的三种高效方案
如何通过 C# 实现 PDF 文本提取?
文本生成任务评估指标
Serilog:从结构化日志认知到 .NET 工程落地
Pretext:值得关注的文本排版引擎
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
CF1032F Vasya and Maximum Matching 题解
12
873
菅舛
2026-01-28
安全
Marek and Matching (hard version) 题解
7
203
仟仞
2026-02-06
代码
用户单击文本并复制至剪帖板
12
72
觐有
2026-02-09
代码
用户单击文本并复制至剪帖板
6
57
圄旧剖
2026-02-09
业界
从KMP到BM:文本编辑器查找算法的进化之路
7
346
呵烘稿
2026-02-26
安全
从纯文本到精美文档:TXT 转 PDF 的三种高效方案
3
747
注思
2026-02-27
业界
如何通过 C# 实现 PDF 文本提取?
4
146
褥师此
2026-03-02
安全
文本生成任务评估指标
2
478
刘凤
2026-03-10
业界
Serilog:从结构化日志认知到 .NET 工程落地
1
182
寥唏
2026-03-24
业界
Pretext:值得关注的文本排版引擎
1
917
溧久苟
2026-03-30
回复
(36)
羔迪
2025-11-2 09:01:02
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
前排留名,哈哈哈
讣丢
2025-12-21 10:20:28
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
新版吗?好像是停更了吧。
兜蛇
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
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
不错,里面软件多更新就更好了
橘芜
2026-1-15 09:05:26
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
鼓励转贴优秀软件安全工具和文档!
艾曼语
2026-1-16 08:59:16
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
很好很强大 我过来先占个楼 待编辑
闻人莹华
2026-1-17 17:23:37
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
这个好,看起来很实用
撒阗奕
2026-1-18 15:11:54
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢楼主提供!
跑两獗
2026-1-18 20:07:07
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
热心回复!
梨恐
2026-1-19 23:13:30
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
这个好,看起来很实用
敖雨燕
2026-1-27 03:35:36
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
东西不错很实用谢谢分享
呶募妙
2026-1-30 02:24:27
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
分享、互助 让互联网精神温暖你我
福清婉
2026-1-30 06:37:47
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享,下载保存了,貌似很强大
砂歹汤
2026-2-4 05:52:31
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
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
991126
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9516
6
宋子
9876
7
韶又彤
9909
8
荪俗
8990
9
蓬森莉
9868
10
俞瑛瑶
10000
查看更多
今日好文热榜
392
如何在手机微信上免费批量删除PDF页面?
653
龙芯2k0300 - 走马观碑组Gazebo仿真环境搭
5
理论都会,实战就废?7个分析模板,帮你打
444
开源重置 沙丘2 游戏 · Dune Legacy
957
vue3这些常见指令你封装了吗
423
【Ubuntu】配置 WSL 环境时,启动虚拟机平
3
Flutter3.41+DeepSeek智能AI应用|flutter3+
274
深度解析Claude Code 51万行源码背后的设计
816
AI时代的变更到底怎么管?(抛砖引玉版)
698
OJ平台远端代码沙箱开发第一周:需求拆解与
979
万字详解 RAG 基础概念:什么是 RAG? 为什
398
天谋科技入选北京市 2026 年第一批专精特新
160
AI对普通人到底有什么用?这8个场景告诉你
81
【节点】[Reciprocal节点]原理解析与实际应
254
为什么使用 Skillsbase 维护自己的 Skills
369
WorkBuddy:快速开启龙虾(OpenClaw)之旅
541
为什么使用 Skillsbase 维护自己的 Skills
869
为什么使用 Skillsbase 维护自己的 Skills
192
为什么使用 Skillsbase 维护自己的 Skills
689
自我即自感:一种极简存在论(四篇)