QuickHash Library C++ Interface


void FinalHex( char* pDest, bool bUpper = false );



    [out] Pointer to the text buffer that will receive the checksum.


    [in] Uppercase flag. If bUpper is false, the received checksum represents a lowercase string, otherwise it represents an uppercase string. 


Call this member function to retrieve the checksum from the CCRC16 object. The checksum is retrieved as a null-terminated hexadecimal string in the text buffer pointed by pDest. The size of the text buffer pointed by pDest must be at least CCRC16::HEXDIGESTSIZE characters.

After the FinalHex method is performed, the CCRC16 object is initialized for new calculations, as it would be constructed again.


#include <fstream>
#include <QuickHash.h>

using namespace std;
using namespace QuickHash;

const unsigned int BUFF_SIZE = 1024;

int main()
    fstream file( "c:\\test.txt", ios::in | ios::binary );

    if( !file )
        return 1;

    unsigned char buff[ BUFF_SIZE ];
    char checksumhex[ CCRC16::HEXDIGESTSIZE ]; //0 terminated

    //Instantiate a CCRC16 object

    CCRC16 hash;

    //Calculate the checksum incrementally block by block using Update

    while( !file.eof() )
        file.read( ( char* )buff, BUFF_SIZE );
        hash.Update( buff, file.gcount() );

    //Do final changes and get the checksum in hex format

    hash.FinalHex( checksumhex );

    //Use the checksum

    return 0;



CCRC16 Overview   |   Class Members   |   Useful Links   |   HashCalc

See Also    CCRC16::Final, CCRC16::Update



Send Feedback to SlavaSoft Inc. Tell a friend about QuickHash Library