问题:Clear函数代码
回答:

封装memset将一片内存区域清零,使代码更精简.

注意:

1.此代码仅用于TC3,如果TC2要使用的话,要注意BC和X86的memset的size是不一样的

2.请不要滥用Clear,不要一个bool都用Clear.可以用于清空byte类型数组,但是不要用于清空string类型之类的数据类型,因为string类型还有结束符,一般清零结构体的方法是声明一个空的结构体进行赋值操作

3.mem系列的都是直接操作内存,效率会提高,但是要注意内存泄露问题,请谨慎使用

FUNCTION Clear : UDINT

VAR_INPUT

in:any;

END_VAR

Tc2_System.MEMSET(destAddr:=ADR(in.pValue[0]),fillByte:=0,n:=DINT_TO_UDINT(in.diSize));

Clear:=DINT_TO_UDINT(in.diSize);

使用方法:

在主程序中直接使用:

Clear(变量);





数据维护:冯国城
编辑时间:5 3月 2023

如果此回答有不清楚或错误的地方,请扫描页面底部二维码添加微信公众号与我们联系,我们努力给您满意的答复。