用 StrTo[…] 類型的函數可以將字符串變量轉換為另一個數據類型,下表列出系統自帶的字符串轉換為其他數據類型的函數:
函數 | 返回值 | 說明 |
StrToAXIS (CHAR strValue[256], AXIS value) | BOOL | 字符串轉AXIS類型數據 |
StrToBOOL (CHAR strValue[256], BOOL value) | BOOL | 字符串轉布爾類型數據 |
StrToE3AXIS (CHAR strValue[256], E3AXIS value) | BOOL | 字符串轉E3AXIS類型數據 |
StrToE6AXIS (CHAR strValue[256], E6AXIS value) | BOOL | 字符串轉E6AXIS類型數據 |
StrToE3POS (CHAR strValue[256], E3POS value) | BOOL | 字符串轉E3POS類型數據 |
StrToE6POS (CHAR strValue[256], E6POS value) | BOOL | 字符串轉E6POS類型數據 |
StrToFRAME (CHAR strValue[256], FRAME value) | BOOL | 字符串轉FRAME類型數據 |
StrToINT (CHAR strValue[256], INT value) | BOOL | 字符串轉整數類型數據 |
StrToPOS (CHAR strValue[256], POS value) | BOOL | 字符串轉POS類型數據 |
StrToREAL (CHAR strValue[256], REAL value) | BOOL | 字符串轉實數類型數據 |
具體語法( 以StrToAxis函數為例):
success = StrToAXIS(string, value) |
元素 | 說明 |
success |
-TRUE:轉換成功 |
String |
2.要將其轉換為另一個數據類型的字符串變量. |
Value |
1.輸出變量的類型:AXIS |
比如:
DECL BOOL success, value
success=StrToBOOL("TRUE", value) ;Value=TRUE
二.字符串變量聲明時的長度
函數StrDeclLen() 根據其在程序聲明部分中的聲明確定字符串變量的長度。
語法:
Length = StrDeclLen(StrVar[]) |
元素 | 說明 |
Length |
1.返回值類型:INT |
StrVar[] |
1.變量類型:CHAR[] |
比如:
CHAR ProName[24]
INT StrLength
StrDeclLen(ProName[]) ;strLength=24 =
三.字符串變量初始化后的長度
與已在程序初始化部分確定的一樣,函數 StrLen() 確定字符串變量的字符串長度。
語法:
Length = StrLen(StrVar[]) |
元素 | 說明 |
Length |
1.返回值類型:INT |
StrVar[] |
1.變量類型:CHAR[] |
比如:
CHAR ProName[24]
INT StrLength
"Pick_Part" =
StrLen(ProName[]) ;StrLength=9 =
四.刪除字符串變量的內容
函數 StrClear() 用于刪除字符串變量的內容。
語法:
Result = StrClear(StrVar[]) |
元素 | 說明 |
Result |
1.返回值類型:BOOL -沒有刪除字符串變量的內容:FALSE |
StrVar[] |
1.變量類型:CHAR[] |
比如:
IF (NOT StrClear($Loop_Msg[])) THEN
HALT
ENDIF
五.擴展字符串變量
用函數StrAdd() 可以給字符串變量擴展其他字符串變量的內容。
語法:
Sum = StrAdd(StrDest[],StrToAdd[]) |
元素 | 說明 |
Sum |
1.返回值類型:INT |
StrDest[] |
1.變量類型:CHAR[] |
StrToAdd[] |
1.變量類型:CHAR 框 |
比如:
DECL CHAR A[50], B[50]
DECL INT AB
"This is an " =
"example" =
StrAdd(A[],B[]) =
"This is an example" =
18 =
六.搜索字符串變量
用函數StrFind() 可以搜索字符串變量的字符串。
語法:
Result = StrFind(StartAt, StrVar[], StrFind[], CaseSens) |
元素 | 說明 |
Result |
1.返回值類型:INT |
StartAt |
1.變量類型:INT |
StrVar[] |
1.變量類型:CHAR 框 |
StrFind[] |
1.變量類型:CHAR 框 |
CaseSens |
#CASE_SENS:要區分大小寫。 |
比如:
DECL CHAR A[5]
DECL INT B
A[]="ABCDE"
B = StrFind(1, A[], "AC", #CASE_SENS) ;B=0
B = StrFind(1, A[], "a", #NOT_CASE_SENS) ;B=1
B = StrFind(1, A[], "BC", #Case_Sens) ;B=2
B = StrFind(1, A[], "bc", #NOT_CASE_SENS) ;B=2
七.比較字符串變量
用函數StrComp() 可以比較兩個字符串變量。
語法:
Result= StrComp(StrComp1[], StrComp2[], CaseSens) |
元素 | 說明 |
|
|
StrComp1[] |
1.變量類型:CHAR[] |
StrComp2[] |
1.變量類型:CHAR 框 |
CaseSens |
#CASE_SENS:要區分大小寫。 |
比如:
DECL CHAR A[5]
DECL BOOL B
A[]="ABCDE"
B = StrComp(A[], "ABCDE", #CASE_SENS) ;B=TRUE
B = StrComp(A[], "abcde", #NOT_CASE_SENS) ;B=TRUE
B = StrComp(A[], "abcd", #NOT_CASE_SENS) ;B=FALSE
B = StrComp(A[], "acbde", #NOT_CASE_SENS) ;B=FALSE
八.復制字符串變量
用函數StrCopy() 可以將字符串變量的內容復制到另一個字符串變量。
語法:
Result = StrCopy(StrDest[],StrSource[]) |
元素 | 說明 |
|
|
StrDest[] |
1.變量類型:CHAR[] |
StrSource[] |
1.變量類型:CHAR 框 |
比如:
DECL CHAR A[25], B[25]
DECL BOOL C
"" =
"Example" =
StrCopy(A[], B[]) =
"Example" =
TRUE =
九.小結: