| xHarbour Reference Documentation > Function Reference |
![]() |
![]() |
![]() |
Rotates bits in a character string to the left.
CharRLL( <cString>, <nShift> ) --> cResult
The function returns a string by rotating the bits of the individual characters of <cString> for <nShift> places to the left. The highest bit replaces the lowest bit for each rotation.
| See also: | CharAND(), CharNOT(), CharOR(), CharRLR(), CharSHL(), CharSHR(), CharXOR() |
| Category: | CT:String manipulation , Bitwise functions , Character functions , xHarbour extensions |
| Source: | ct\charop.c |
| LIB: | xhb.lib |
| DLL: | xhbdll.dll |
// The example demonstrates the effect of rotating bits in
// a two-character string, by displaying the ASCII codes and
// their binary representation before and after the left rotation.
PROCEDURE Main
LOCAL cString := "AB"
LOCAL cShift
LOCAL nAsc1, nAsc2
? nAsc1 := Asc( cString[1] ) // result: 65
? nAsc2 := Asc( cString[2] ) // result: 66
? NtoC( nAsc1, 2, 8, "0" ) // result: 01000001
? NtoC( nAsc2, 2, 8, "0" ) // result: 01000010
cShift := CharRLL( cString, 2 )
? nAsc1 := Asc( cShift[1] ) // result: 5
? nAsc2 := Asc( cShift[2] ) // result: 9
? NtoC( nAsc1, 2, 8, "0" ) // result: 00000101
? NtoC( nAsc2, 2, 8, "0" ) // result: 00001001
RETURN
http://www.xHarbour.com