有些朋友經(jīng)常問我實(shí)數(shù)與字符串之間怎么轉(zhuǎn)化,尤其是在EthernetKRL的Binarystream的使用中。那么這邊文章以代碼的形式來展示。
一.實(shí)數(shù)轉(zhuǎn)化為字符串:
;***************************************************;* 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 32Ret[I]=0ENDFORSWRITE(Ret[],State,offset,"%f",rVar)Return (ret[])ENDFCT
測(cè)試程序:
DEF CHeck( )DECL CHAR test[32]DECL REAL xDECL INT IFOR I=1 TO 32Test[i]=0ENDFORX=-3.14Test[]=Real_2_string(x)HALTEND
測(cè)試結(jié)果:

如果將程序修改下,就可以保留小數(shù)點(diǎn)后幾位的格式:
;***************************************************;* 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 32Ret[I]=0ENDFORSWRITE(Ret[],State,offset,"%.3f",rVar)Return (ret[])ENDFCT
測(cè)試結(jié)果:

二.字符串轉(zhuǎn)實(shí)數(shù):
對(duì)于字符串轉(zhuǎn)實(shí)數(shù)有兩種方式,一種是系統(tǒng)函數(shù),一種用戶自定義的函數(shù);
-
系統(tǒng)自定義函數(shù):
;**************************************************;* 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; *;**************************************************測(cè)試程序:
測(cè)試結(jié)果:

-
用戶定義函數(shù):
;***************************************************;* 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 stateDECL CHAR StringIn[]DECL REAL RealOutDECL INT zOffsetzOffset=0SREAD(StringIN[],State,zOffset,"%f",RealOut)RETURN(RealOut)ENDFCT測(cè)試程序:

測(cè)試結(jié)果:

責(zé)任編輯:xj
原文標(biāo)題:庫卡編程篇實(shí)數(shù)與字符串轉(zhuǎn)化
文章出處:【微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
編程
+關(guān)注
關(guān)注
90文章
3707瀏覽量
96717 -
字符串
+關(guān)注
關(guān)注
1文章
594瀏覽量
23029 -
庫卡
+關(guān)注
關(guān)注
0文章
83瀏覽量
14601
原文標(biāo)題:庫卡編程篇實(shí)數(shù)與字符串轉(zhuǎn)化
文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
如何使用 NuMaker 板和 Mbed OS 上的連接字符串連接到 Azure IoT?
LM3466 多串 LED 電流平衡器技術(shù)手冊(cè)
labview如何生成一個(gè)帶字符串返回的dll
在Python中字符串逆序有幾種方式,代碼是什么
SQL 通用數(shù)據(jù)類型
為啥51單片機(jī)能搞,峰岹的就會(huì)報(bào)錯(cuò)呢?
harmony-utils之StrUtil,字符串工具類
STM32C031C6使用的是UART2通訊,通過printf()函數(shù)發(fā)送字符串時(shí),漢字錯(cuò)碼怎么解決?
請(qǐng)問如何用Verilog實(shí)現(xiàn)將ascaii碼數(shù)值字符串轉(zhuǎn)換成定點(diǎn)數(shù)?
字符串在數(shù)據(jù)庫中的存儲(chǔ)方式
字符串在編程中的應(yīng)用實(shí)例
字符串與字符數(shù)組的區(qū)別
字符串反轉(zhuǎn)的實(shí)現(xiàn)方式
字符串處理方法 字符串轉(zhuǎn)數(shù)字的實(shí)現(xiàn)
腳本美化高手之輕松實(shí)現(xiàn)文本顏色和背景定制的酷炫Shell技巧

實(shí)數(shù)與字符串之間怎么轉(zhuǎn)化
評(píng)論