C动作脚本求解

这是一个输出输入域中的一个C动作,动作内容为将系统参数6读取出来,或者将新值赋给系统参数6。内部变量中可找到UNIT;但不能找到“.SYS_PARA6”,请注意“.SYS_PARA6”中最前面有一个点。
而该画面名称为U172_CC1B_Seq.PDL.。而系统的TCP/IP中,有变量组U172_UD,变量组中有一个变量叫做“U172_CC1B.SYS_PARA6”,可以肯定,

问:strcat(TagName,".SYS_PARA6");中:".SYS_PARA6"指的是哪个变量,若是“U172_CC1B.SYS_PARA6”,是如何实现只用后缀便可指定此变量。或者有偏移寻址的说法?求高手解此惑。

#include "apdefap.h"
 double _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
double waarde;
char TagName[256];      // Command Word 1

strcpy(TagName,GetTagChar("UNIT"));
strcat(TagName,".SYS_PARA6");
waarde =GetTagDouble(TagName)/10.0; 
return waarde;
}

最佳答案

首先你要搞明白strcpy和strcat这两个函数的意思。
1.strcpy是复制字符串
原型:extern char *strcpy(char *dest,const char *src);   
头文件:string.h   
功能:把从src地址开始且含有NULL结束符的字符串赋值到以dest开始的地址空间   
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。   返回指向dest的指针。
2.strcat
原型:extern char *strcat(char *dest,char *src);
用法:#include <string.h>   在C++中,则存在于<cstring>头文件中。
功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的''\0'')并添加''\0''。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。   返回指向dest的指针。
举例
  // strcat.c   
#include <syslib.h>   
#include <string.h>   
main()   
{   char d[20]="Golden Global";   
char *s=" View";   
strcat(d,s);   
printf("%s",d);   
getchar();   
return 0;   
}   
程序执行结果为:   Golden Global View
明白这两个函数的意思,我想你自然就会明白你所提问题的答案了。

提问者对于答案的评价:
回答得太好了,二楼也做了很好的补充,谢谢。不知道从哪可以下载到函数的详细说明?有的话,请发我一份好吗?网上下载的WINCC全局脚本手册写得不详细。或者说是自己水平低,看得不太懂。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc263844.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午2:34
下一篇 2019年6月11日 上午2:34

相关推荐

  • vb读写wincc数据

    我用vb读写wincc数据采用创建wincc运行对象Set wincc = CreateObject("WinCC-Runtime-Proj…

    SIMATIC WinCC 2019年6月11日
  • wincc如何通过opc访问外网的opc服务器

    知道wincc可作opc客户机。。但是wincc可以通过opc访问外网的opc服务器么,就是通过internet?如果可以怎么实现?1.需要固态ip么,还是其他。 &nb…

    SIMATIC WinCC 2021年7月5日
  • wincc 死机

    我用两个单用户系统wincc,共同监控同一个plc,发现wincc有死机现象。是不是两个wincc同时运行监控一个plc互相有影响? 问题补充:东方一红:  &…

    SIMATIC WinCC 2019年6月11日
  • WinCC License 移植

    我有一个WinCC(7.0 SP3)的程序,原来是XP系统下运行的,授权也使用正常。上周,该电脑的主板损坏,新买的电脑只可以运行win7。我将原来电脑的硬盘下的授权文件,…

    SIMATIC WinCC 2017年6月12日
  • WinCC不能打开与文件夹同名的MCP文件

    WinCC6.0SP4(2003SERVER SP1)打开D盘的项目,如果项目文件夹与MCP文件同名,提示“The user does no…

    SIMATIC WinCC 2019年6月11日
  • WINCC组态的问题

    我现在在组态一个冷库的项目,现在有一个要求:每当制冷机打开10分钟要求温度降低1摄氏度,否则报警,怎么用脚本实现?最好能写一段。谢谢了! 问题补充:  上位连接的是智能采…

    SIMATIC WinCC 2019年6月11日
  • WINCC7.3 里点击图标弹出窗口的脚本函数解析

    #include "apdefap.h"void Click(char* lpszPictureName, char*&…

    SIMATIC WinCC 2021年7月5日
  • wincc运行界面里面怎么调用屏幕键盘?

    请问wincc高手:在wincc运行界面里面用什么方法调用屏幕键盘?如果做一个按钮,在这个按钮里面应该编写什么脚本程序? 最佳答案 WinCC Explorer打开项目后…

    SIMATIC WinCC 2019年6月11日
  • wincc通讯驱动

    该设备通讯方式是串口连接方式工控机的,提供的通讯驱动是EXE格式,但wincc添加新驱动需要的是chn格式的,请问该怎么解决?? 最佳答案 目前还没有听说设备直接带有WinCC驱动…

    SIMATIC WinCC 2017年11月29日
  • wincc管道中实现动态像霓虹灯一样的变换

    怎么在wincc中实现管道流通后那个色彩一点点的向想要流动的方向增加像是霓虹灯是的增加 当然不用做的那么真 这个用状态显示好像不好做因为我的管道很多 …

    SIMATIC WinCC 2019年6月11日