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日 上午10:40
下一篇 2019年6月11日 上午10:40

相关推荐

  • Wincc7.5打不开项目,报找不到服务器,急!

    wincc7.5 打开Wincc7.2项目,打不开。移植的时候报是最新的,不需要移植。 钻石用户推荐最佳答案 按下列步骤检查,没准你第一步就没完成哦: &nbs…

    SIMATIC WinCC 2021年7月5日
  • C语言程序、窗口画面小问题

    窗口画面:现在我要在主画面里单击按钮或者阀门弹出一个窗口画面,不是一个全屏的画面,这个窗口画面我知道用窗口画面工具来做,可是怎么都不行,请指点!C语言:听说上面的弹出窗口画面要用C…

    SIMATIC WinCC 2019年6月11日
  • TP1200运行几分钟后报错

    applicaton deviceManager.exe encountered a serious error and…

    SIMATIC WinCC 2021年7月5日
  • WINCC中在线趋势控件开始和结束时间的设置问题

    请问: 我想在线趋势控件中显示一个特定时间段的曲线。 我写的代码如下: char *str_a; char *str_b…

    SIMATIC WinCC 2019年6月11日
  • WINCC项目集成在STEP7下

    1.我在STEP7下面通过Station Configuration Editor集成了一台工程师(如图EX)站,并测试通过了。2.我有两台电脑,想在这个项目下…

    2021年7月5日
  • 脚本按变量触发问题

    在WINCC的全局动作中,有2个全局脚本,第一个脚本是1秒钟触发一次,目的是整点的时候把一个二进制变量置“1”,用这个二进制变量触发第二个全局脚本,如果这个二进制变量置“1”,就触…

    SIMATIC WinCC 2019年6月11日
  • 求推荐几本PLC,wincc,变频器,逆变器,伺服马达的书

    小弟以前做三菱PLC编程的,现在学习西门子,想了解西门子的PLC,wincc,变频器,逆变器,伺服马达等,想找几本书,希望大神们能提供点参考 最佳答案 <S7-200&nbs…

    SIMATIC WinCC 2021年7月5日
  • 关于wincc界面

    1,我创建的图界面,运行的时候如何能最小化?2,我有一个主界面,3个功能界面。通过主界面的按钮切换至功能界面。主界面设置属性时比较大,为500*500。功能界面我设置的为300*3…

    SIMATIC WinCC 2019年6月11日
  • wincc的时间提取问题

    WINCC中有个时间函数是now(),可以提取系统时间,可以精确到秒,但是现在我想让提取到得时间精确到毫秒,请问有什么别的函数没有,或者有什么好的方法? 最佳答案 可以用Timer…

    SIMATIC WinCC 2019年6月11日
  • wincc与微信

    组态王好像有个与手机微信连接的块,wincc有这个功能嘛 最佳答案 需要采购第三方产品。请参考。 参考资料:https://blog.csdn.net/csjukong/artic…

    SIMATIC WinCC 2021年7月5日