前言
最近换工作,在学习了解halcon工具,每天总结分析今天所学知识,今天是基础语法篇!
1.基本语法
描述 |
语法 |
等号 |
:= |
不等号 |
# |
注释符 |
* |
字符串赋值 |
str:='halcon' |
等于比较符 |
if(x=10) |
与 |
if(x>1 and x<10) |
或 |
if(x>1 or x<10) |
求反 |
if(notA=10) |
For循环 |
for i:=0 to 10 by 1 ... endfor |
While循环 |
while(x==1) ... EndWhile |
异常获取 |
try ... catch(Exception) Endtry |
Switch多分支 |
switch(index) case 1: ... break default : ... break endswitch |
其中的...表示需要执行的内容
2.Tuple数组
- 将一个Tuple数组赋值给变量
arr:=[1,0,3,4,2]
- 给Tuple数组元素赋值
arr[1]:=2
- 批量改变数组元素的值
arr[1,2]:='abc'[替换数组中1,2的值为abc]
- 批量给arr数组赋值,其值为0到100连续数值
arr:=[0,100]
- 批量给arr数组赋值,其值为3到200连续数值,步长为1
arr:=[3:1:200]
- 批量给arr数组赋值,其值为100到-100连续数值,步长为-10
arr:=[100:-10:-100]
- 对两个数组合并操作
arr1:=[1,2,3]
arr2:=[2,3,4]
tuple_union(arr1,arr2,arr3)[去掉数组重复的元素]
arr3:=[1,2,3,4]
arr1:=[1,2,3]
arr2:=[2,3,4]
tuple_union(arr1,arr2,arr3)[取两数组交集]
arr3:=[2,3]
arr:=[0,1,2,3]
tuple_replace(arr,[0,1],['x','y'],Replaced)
arr:=[0,1,2,3,4]
tuple_insert(arr,3,'x',InsertSingVaueA)
3.字符数组的格式化
语法 |
描述 |
#0' |
8进制,0为前缀 |
#x' |
16进制,0x为前缀,7b为赋值 |
#X' |
16进制,0x为前缀,7B为赋值,7b与7B是一样的 |
#f' |
double型,默认保留小数点后六位 |
#g' |
使数字始终保持六位,不足补零 |
#G' |
使数字始终保持六位,不足补零 |
#e' |
转换成科学计数 |
#E' |
转换成科学计数 |
10' |
文本右对齐 |
-10' |
文本左对齐 |
4.整数
语法 |
描述 |
6' |
小于六位时,文本右对齐,大于不影响 |
-6' |
小于六位时,文本左对齐,大于不影响 |
-6' |
小于六位时,文本左对齐,大于不影响 |
.6' |
小于六位时,在左补零,大于不影响 |
10.6' |
小于十位时,文本右对齐;小于五位则在左补零,大于不影响 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?