wincc中关于字算变量的比较

我在wincc中建有字符型变量C_Code,我在C脚本中要判断C_Code是不是为空,具体脚本如下:char* code;
        code=GetTagChar("C_Code");
        if (code==NULL)
         {代码}
        else {代码}
运行下来,不管C_Code的值为空还是有字符值,程序都执行else下的代码,我把NULL改成了“”也一样

最佳答案

你用GetTagChar("C_Code")获得的是一个指向字符串变量C_Code的指针,它一般都不会是0,所以会出现你所说的情况。
你应该使用strcmp之类的函数来实现字符串比较,比如:
 if (strcmp(GetTagChar("C_Code"), ""))
         {不为空的代码}
  else
         {为空的代码}

提问者对于答案的评价:
可以了,非常感谢。可否加下QQ331781785交个朋友,朋友也是做工控的吧

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午1:45
下一篇 2021年7月5日 下午1:45

相关推荐

  • 报警记录怎么不能归档

    为什么新来的报警,怎么在长期/短期归档列表中没有显示。在wincc的报警记录设置中以链接到了alrmlogging的文件夹的数据库中了 问题补充:还是不行啊。 最佳答案 打开报警编…

    SIMATIC WinCC 2019年6月11日
  • WinCC7.4SP1 改变画面窗口高度属性的代码不执行

    wincc7.3版本换成7.4SP1之后,把原来项目复制过来使用时,发现VBS脚本写的HMIRuntime.ActiveScreen.ScreenItems("PIC&q…

    2021年7月5日
  • WINCC C函数 DMGetProjectDirectory 等

    看了几个脚本DM_DIRECTORY_INFO 类型DMGetRuntimeProject()DMGetProjectDirectory()—————…

    SIMATIC WinCC 2017年6月18日
  • wincc 变量替换时窗口卡死

    由于要组成服务器客户机系统,所以做好的画面链接的变量前面都要加上服务器的标示,例如SERVER1::TAG,但是在用变量替换时就会卡死(不是类似前面加服务器标示的替换都正常),请问…

    SIMATIC WinCC 2019年6月11日
  • 以时间标签为名保存EXCEL

    我已经将数据导入到EXCEL 现在我要每天以每天的日期为名自动保存一个EXCEL 请问这样做是可以的吗?究竟怎么做的,大侠们能不能给我点指点. 最佳答案 都“已…

    SIMATIC WinCC 2019年6月11日
  • 站组态编辑器无法添加项目?

    现在刚在学习wincc,今天想在STEP7下建立一个pc站,但是在站点组态编辑器里面无法添加项目,“添加”这个按钮是灰色的,不起作用。想向高手求组一下是什么原因引起的,截图图1所示…

    2017年11月12日
  • WINCC如何重新激活OPC服务器

    WINCC通过OPC与其他PLC通信,第三方的OPC服务器挂了(死掉了),除重启WINCC运行系统外,能不能通过脚本再次激活,当然是只知道OPC服务器的名(称服务器ID),其他就不…

    SIMATIC WinCC 2021年7月5日
  • WinccV6.0能在Windows7系统上安装使用吗

    WinccV6.0能在Windows7系统上安装使用吗 最佳答案 WinccV6.0能在Windows7系统上安装使用吗——    &nbs…

    SIMATIC WinCC 2019年6月11日
  • wincc版本问题8

    厂家的设备用的是wincc7.5的,我现在只有wincc7.4的,打不开啊,有不有什么办法,能不能把wincc7.5的降低版本,谢谢! 最佳答案 不能,你只有升级你的软件到7.5 …

    SIMATIC WinCC 2021年7月5日
  • 动态对象

    WINCC中做个管道,要实现动态: 我的思路:定义内部变量MOVE, 全局动作: static int MOVE=190;&nbs…

    SIMATIC WinCC 2019年6月11日

发表回复

登录后才能评论