CHARSUB()
Subtracts corresponding ASCII value of two strings
- Syntax
-
- CHARSUB (<[@]cString1>, <cString2>) --> cSubString
- Arguments
-
- <[@]cString1> first string <cString2> second string
- Returns
-
- <cSubString> string with subtracted ASCII values
- Description
-
- The CHARSUB() function constructs a new string from the two strings passed as parameters. To do this, it subtracts the ASCII values of the corresponding characters of both strings and places a character in the resulting string whose ASCII value equals to that difference (modulo 256). If the first string is passed by reference, the resulting string is stored in <cString1>, too. By setting the CSETREF()-switch to .T., the return value can be omitted. If <cString2> is shorter than <cString1> and the last character of <cString2> has been processed, the function restarts with the first character of <cString2>.
Examples
? charsub ("012345678", chr(1)) --> "/01234567"
? charsub ("123456789", chr(255)) --> "23456789:"
? charsub ("9999", chr(0)+chr(1)+chr(2)+chr(3)) --> "9876"
Tests
charsub ("123456789", chr(1)) == "012345678"
charsub ("123456789", chr(1)+chr(2)) == "002244668"
charsub ("012345678", chr(255)) == "123456789"
charsub ("012345678", chr(255)+chr(254)) == "133557799"
- Status
- Ready
- Compliance
-
- CHARSUB() is a new function that is only available in Harbour's CT3 lib.
- Platforms
-
- All
- Files
-
- Source is charop.c, library is ct3.
- See Also