xHarbour Reference Documentation > Function Reference xHarbour Developers Network  

CharRLL()

Rotates bits in a character string to the left.

Syntax

CharRLL( <cString>, <nShift> ) --> cResult

Arguments

<cString>
This is the character string to process.
<nShift>
This is a numeric integer value indicating how many places the bits of each character of <cString> are rotated to the left.

Return

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.

Info

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

Example

// 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

Copyright © 2006-2007 xHarbour.com Inc. All rights reserved.
http://www.xHarbour.com
Created by docmaker.exe