C++ Builder Snippets  

Dual nach Dezimal konvertieren:
 
//------------------------------------------------------------------
//  BinToDec konvertiert die übergebene Binärzahl in eine Dezimalzahl
//------------------------------------------------------------------
// '#include <math.h>' nicht vergessen (wegen powl())
long int BinToDec(AnsiString slNumStr)
{
  long int ilDecVal = 0;
  for(int ilChar = slNumStr.Length(); ilChar > 0; ilChar--)
  {
    if(slNumStr[ilChar]=='1')
      ilDecVal += powl(2,(slNumStr.Length()-ilChar));
    else if(slNumStr[ilChar]!='0') return 0;
  }
  return ilDecVal;
}

//------------------------------------------------------------------
// Diese Variante der Funktion BinToDec() von René Greiner 
// (Fury73@gmx.de) wird ca. 15% schneller ausgeführt
//------------------------------------------------------------------
long int BinToDec(AnsiString slNumStr)
{
  long int ilDecVal = 0;
  for(int ilChar = 1; ilChar <= slNumStr.Length(); ilChar++)
  {
    ilDecVal = ilDecVal << 1;
    if(slNumStr[ilChar]=='1') ilDecVal += 1;
  }
  return ilDecVal;
}

  Download BCB4
Projekt-Quellcode
Download
Demo-Exe

© '99-2000 by S. Kreutzmann