0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

实数与字符串之间怎么转化

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2020-12-24 09:37 次阅读

有些朋友经常问我实数与字符串之间怎么转化,尤其是在EthernetKRL的Binarystream的使用中。那么这边文章以代码的形式来展示。

一.实数转化为字符串:

;***************************************************;* Customer     :                                  *;* Roboter      :                                  *;* Version      : Vxxxxxx                          *;* Roboter Nr.  : xxxxxx                           *;* Controller Nr: xxxxxx                           *;*                                                 *;* Autor        : Andrew Wang                      *;* Company      :                                  *;* Department   :                                  *;* Telephone    : 86 156-8082-2827                 *;*                                                 *;* Version      : 1.0                              *;* Created      : 12.12.2018                       *;* Modified     :                                  *;* Project      :                                  *;*                                                 *;*ProgramName:Real_2_String*;* Convert a REAL variant to a string variable;    *;************************************************** DEFFCT CHAR[32] Real_2_String(rVar:IN )DECL CHAR Ret[32]DECL INT Offset,IDECL STATE_T stateDECL REAL rVarOffset=0FOR I=1 TO 32  Ret[I]=0ENDFORSWRITE(Ret[],State,offset,"%f",rVar)Return (ret[])ENDFCT

测试程序:

DEF CHeck( )DECL CHAR test[32]DECL REAL xDECL INT I FOR I=1 TO 32 Test[i]=0ENDFORX=-3.14Test[]=Real_2_string(x)HALTEND

测试结果:

a3eebd5a-2e44-11eb-a64d-12bb97331649.png

如果将程序修改下,就可以保留小数点后几位的格式:

;***************************************************;* Customer     :                                  *;* Roboter      :                                  *;* Version      : Vxxxxxx                          *;* Roboter Nr.  : xxxxxx                           *;* Controller Nr: xxxxxx                           *;*                                                 *;* Autor        : Andrew Wang                      *;* Company      :                                  *;* Department   :                                  *;* Telephone    : 86 156-8082-2827                 *;*                                                 *;* Version      : 1.0                              *;* Created      : 12.12.2018                       *;* Modified     :                                  *;* Project      :                                  *;*                                                 *;* Program Name : Real_2_String                   *;* Convert a REAL variant to a string variable;    *;************************************************** DEFFCT CHAR[32] Real_2_String(rVar:IN )DECL CHAR Ret[32]DECL INT Offset,IDECL STATE_T stateDECL REAL rVarOffset=0FOR I=1 TO 32  Ret[I]=0ENDFORSWRITE(Ret[],State,offset,"%.3f",rVar)Return (ret[])ENDFCT

测试结果:

a72c82cc-2e44-11eb-a64d-12bb97331649.png

二.字符串转实数:

对于字符串转实数有两种方式,一种是系统函数,一种用户自定义的函数;

  1. 系统自定义函数:

    ;**************************************************;* System Built-in function-StrToReal             *;* Return Vaule=StrToReal(CHAR:IN,REAL:OUT) ;     *;* Convert a string in a Real variable   ;        *;* Range value of Argument IN :Char Array ;       * ;* Range value of Argument OUT :REAL ;            * ;* Range value of Result is Bool as Result;       *;**************************************************

    测试程序:

    测试结果:

    ad940a7c-2e44-11eb-a64d-12bb97331649.png

  2. 用户定义函数

    ;***************************************************;* Customer     :                                  *;* Roboter      :                                  *;* Version      : Vxxxxxx                          *;* Roboter Nr.  : xxxxxx                           *;* Controller Nr: xxxxxx                           *;*                                                 *;* Autor        : Andrew Wang                      *;* Company      :                                  *;* Department   :                                  *;* Telephone    : 86 156-8082-2827                 *;*                                                 *;* Version      : 1.0                              *;* Created      : 12.12.2018                       *;* Modified     :                                  *;* Project      :                                  *;*                                                 *;* Program Name : String_To_Real                   *;* Convert a string variant to a real  variable;   *;************************************************** GLOBAL DEFFCT REAL String_To_Real(StringIn[]:IN)DECL STATE_T state DECL CHAR StringIn[]DECL REAL RealOutDECL INT zOffsetzOffset=0SREAD(StringIN[],State,zOffset,"%f",RealOut)RETURN(RealOut)ENDFCT

    测试程序:

    adb88406-2e44-11eb-a64d-12bb97331649.png

    测试结果:

    add4fc76-2e44-11eb-a64d-12bb97331649.png

责任编辑:xj

原文标题:库卡编程篇实数与字符串转化

文章出处:【微信公众号:机器人PLC自动化应用】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    88

    文章

    3616

    浏览量

    93743
  • 字符串
    +关注

    关注

    1

    文章

    579

    浏览量

    20524
  • 库卡
    +关注

    关注

    0

    文章

    80

    浏览量

    14226

原文标题:库卡编程篇实数与字符串转化

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    字符串处理:4G模组软件指南精要!

    最近一直有朋友咨询我关于4G模组的字符串处理,今天我便把相关指南展示给大家。
    的头像 发表于 11-17 09:57 221次阅读
    <b class='flag-5'>字符串</b>处理:4G模组软件指南精要!

    base64字符串转换为二进制文件

    Base64是一种编码方法,用于将二进制数据转换为ASCII字符串。这种编码通常用于在不支持二进制数据的系统中传输数据,例如电子邮件或网页。将Base64字符串转换为二进制文件的过程相对简单,但需要
    的头像 发表于 11-10 10:55 1140次阅读

    labview中浮点数与十六进制字符串相互转化

    与下位机数据交流及通讯时,经常有浮点数与十六进制字符串相互转化的需求,经过两天总结,找到了最简洁的相互转化的方法,萌新欢迎大佬指正,文件也附上。*附件:HEX字符串与浮点数转换.rar
    发表于 10-21 19:51

    MATLAB(5)--字符串处理

    和double函数都可以获取字符串矩阵对应的ASCII数值矩阵。 char函数可以吧ASCII码矩阵转化字符串矩阵。 字符串的比较 字符串
    发表于 09-06 10:22

    labview字符串数组转化为数值数组

    在LabVIEW中,将字符串数组转换为数值数组是一项常见的任务,尤其是在处理数据采集、信号处理或用户输入时。 1. 理解LabVIEW的数据类型 在开始之前,了解LabVIEW中的数据类型是非
    的头像 发表于 09-04 17:47 2376次阅读

    labview字符串如何转换为16进制字符串

    在LabVIEW中,将字符串转换为16进制字符串是一个常见的需求,尤其是在处理数据通信和硬件接口时。LabVIEW提供了多种方法来实现这一转换,包括使用内置函数、编写VI(Virtual
    的头像 发表于 09-04 15:54 2493次阅读

    labview中如何实现字符串换行

    1. 字符串换行的基本概念 在LabVIEW中,字符串换行通常指的是在字符串中插入换行符,使得字符串在显示或输出时能够自动换行。这在创建用户界面或处理文本数据时非常有用。 2.
    的头像 发表于 09-04 15:47 1716次阅读

    labview中如何实现字符串选择输出

    在LabVIEW中实现字符串选择输出是一项常见的任务,它涉及到字符串处理、条件判断和用户界面设计等多个方面。由于LabVIEW是一种图形化编程语言,其编程方式与传统的文本编程语言有所不同,因此实现
    的头像 发表于 09-04 15:44 947次阅读

    labview中常用的字符串函数有哪些?

    在LabVIEW中,常用的字符串函数广泛覆盖了对字符串的各种操作,包括但不限于格式化、搜索、替换、连接、计算长度等。以下是一些常用的字符串函数及其简要说明: 字符串长度(String
    的头像 发表于 09-04 15:43 739次阅读

    labview字符串的四种表示各有什么特点

    。在LabVIEW中,字符串是一种基本的数据类型,用于表示文本信息。字符串在LabVIEW中有多种表示方式,每种方式都有其特定的应用场景和特点。以下是对LabVIEW中四种字符串表示方式的分析: 1.
    的头像 发表于 09-04 15:40 584次阅读

    锐评Ruby 3.4.0 默认启用字符串字面量冻结功能

    据悉,Ruby自2.3版起引入了“冻结”机制,通过使用frozen_string_literal: true魔法注释,可令文件内所有字符串字面量默认为冻结状态,防止开发过程中无意修改字符串,提高代码稳定性与性能,降低内存占用。
    的头像 发表于 05-17 15:44 390次阅读

    鸿蒙TypeScript学习第10天:【String(字符串)】

    String 对象用于处理文本(字符串)。
    的头像 发表于 04-08 14:32 826次阅读
    鸿蒙TypeScript学习第10天:【String(<b class='flag-5'>字符串</b>)】

    C语言字符串编译函数介绍

    在C语言中,字符串实际上是使用null字符O'终止的一维字符数组。因此,一个以null结尾的字符串,包含了组成字符串
    的头像 发表于 03-07 16:18 514次阅读
    C语言<b class='flag-5'>字符串</b>编译函数介绍

    USB字符串描述符里面的序列号字符串到底是什么东西?

    在设备描述符里面,有一个表示序列号字符串描述符的编号,请问这个序列号字符串的描述符是什么东西呢? 厂商字符串和设备字符串都能理解,而且在电脑的“设备与打印机”里面都找到了。但请问这个
    发表于 01-24 08:06

    labview二进制字符串转数值

    字符串是一种常见的数据类型,它表示了以二进制形式存储的数据。当我们需要将这些二进制字符串转换为数值时,LabVIEW提供了一些常用的函数和方法,可以帮助我们完成这个任务。 首先,我们需要明确二进制字符串的格式。在LabVIEW中
    的头像 发表于 01-05 16:20 2709次阅读