wincc与c脚本

我有很多内部变量,如a1-1,a1-2.a1-3,a2-1,……,我想在c语言中做成循环,来方便使用这些内部变量,不做循环,语句比较烦琐,修改起来工作量也较大,怎样实现?谢谢!

问题补充:
比如程序如下:
 int c;
 int f;
 c=GetTagDouble("b0");
 f=GetTagDouble("a0");
 switch(c)
 {
 case 1:
 {
 switch(f)
 {
 case 1:
 {
 int static n11,n12,n13,n14;
 char* s2;
 char s3;
 int n2;
 s2=GetTagChar("a");
 s3=*s2;
 switch(s3)
 {
 case ‘a’:
 {
 n11=GetTagDouble("a1-1");
 n11++;
 SetTagDouble("a1-1",n11);
 s3=’\0′;//
 SetTagChar("a",&s3);
 SetTagChar("b",s2);
 break;
 }
 case ‘b’:
 {
 n12=GetTagDouble("a1-2");
 n12++;
 SetTagDouble("a1-2",n12);
 s3=’\0′;
 SetTagChar("a",&s3);
 SetTagChar("b",s2);
 break;
 }
 ……
 break;
 }

 case 2:
 {
 int static n21,n22,n23,n24;
 char* s2;
 char s3;
 int n2;
 s2=GetTagChar("a");
 s3=*s2;
 switch(s3)
 {
 case ‘a’:
 {
 n21=GetTagDouble("a2-1");
 n21++;
 SetTagDouble("a2-1",n21);
 s3=’\0′;
 SetTagChar("a",&s3);
 SetTagChar("b",s2);
 break;
 }
 case ‘b’:
 {
 n22=GetTagDouble("a2-2");
 n22++;
 SetTagDouble("a2-2",n22);
 s3=’\0′;
 SetTagChar("a",&s3);
 SetTagChar("b",s2);
 break;
 }
 ……
 break;
 }
 诸如此类的变量有好多,没有循环就是一直重复这样写程序?
 十分感谢!

最佳答案

给你一段代码供你参考:
 int i;
 char tagn[20];
 char  num_a[10];
 for(i=1;i<=24;i++)
   {
    sprintf(tagn,"NUM.A%d",i);
    sprintf(num_a,"%d",i);
    SetTagCharWait(tagn,num_a); 
    }
 //代码的功能就是给NUM.A1-NUM.A24依次赋值

提问者对于答案的评价:
十分感谢!

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

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

相关推荐

  • wincc项目菜单中的编译器和传送的子菜单是灰色的

    wincc项目菜单中的编译器的子菜单和传送的子菜单是灰色的,不能用!有谁知道的???急急!!!!谢谢!!!! 最佳答案 很可能楼主项目中的设备版本能被更改为较老的版本,这样的话,项…

    SIMATIC WinCC 2019年6月11日
  • 静态文本一个函数问题

    我想问一下有谁知道wincc静态文本中边框属性的修改函数是什么? 问题补充:不好意思可能是我没讲清楚,我是想问如果用一个按钮来控制静态文本中属性->其它->调整边框的是…

    SIMATIC WinCC 2019年6月11日
  • wincc 运行出错

    wincc运行一段时间后有对话框提示,并且点确定或取消都不能正常使用。如图。求高手指点。 问题补充:只运行wincc时才出现,其他软件没问题,打开后在运行画面过一段时间就出(30分…

    SIMATIC WinCC 2017年11月12日
  • WINCC 6.2 自动运行时报错

    我的项目运行时报错 Unhandled exception was raised. Look WinCC Di…

    SIMATIC WinCC 2019年6月11日
  • 关于:WINCC6.0SP3 的安装问题

    安装WINCC6.0SP3 ,需要先安装SQL2000SP3a,我如此安装,但WINCC检测不到SQL的安装,提示SQL末安装。请问这是什么原因,如何解决?我的WINCC…

    SIMATIC WinCC 2019年6月11日
  • 消息文本中出现??

    按照A0580的文档,读取报警记录数据到Excel后,发现消息文本中,除了英文字符能显示,中文字体都变成了问号????。请教各位专家,这是什么原因呢,怎么解决呢?谢谢。 问题补充:…

    2018年12月5日
  • WinCC中英文切换后显示问号

    WinCC 6.2 ASIA版本在Text Library添加中文后,利用语言切换按钮到中文,都显示问号。请问是什么原因?谢谢 问题补充:系统语言已经…

    SIMATIC WinCC 2019年6月11日
  • 求wincc7.5 经典版的使用手册

    wincc7.5 经典版的使用手册,最详细的那种 最佳答案 《WinCC V7.5:入门指南》https://support.industry.siemens.…

    SIMATIC WinCC 2021年7月5日
  • wincc变量的搜索

    变量表里建立的变量太多,现在要新增几个变量,但为了避免重复,我该怎么查看wincc变量表里哪些变量是已经使用过的了(像step7就很方便)。谢了。 最佳答案 不用看交叉索引,Win…

    SIMATIC WinCC 2019年6月11日
  • WINCC 与PCS7许可证问题

    最近公司要做个项目,想购买WINCC与PCS7 ,但听说WINCC有好多种许可证,开发版,运行版,还分工程师站,客户机站,全买的话价格相对比较高,请问各位大怎样购买才是最…

    SIMATIC WinCC 2019年6月11日