xHarbour Reference Documentation > Function Reference xHarbour Developers Network  

CharRLR()

Rotates bits in a character string to the right.

Syntax

CharRLR( <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 right.

Return

The function returns a string by rotating the bits of the individual characters of <cString> for <nShift> places to the right. The lowest bit replaces the highest bit for each rotation.

Info

See also:CharAND(), CharNOT(), CharOR(), CharRLL(), 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 right 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 := CharRLR( cString, 2 )

      ? nAsc1 := Asc( cShift[1] )       // result:  80
      ? nAsc2 := Asc( cShift[2] )       // result: 144
      ? NtoC( nAsc1, 2, 8, "0" )        // result: 01010000
      ? NtoC( nAsc2, 2, 8, "0" )        // result: 10100000
   RETURN

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