|
QuickHash Library |
API |
|
SL_CRC16C_FinalHex
void SL_HASHCALL SL_CRC16C_FinalHex( void*
pContext, void* pDest, int bUpper );
Parameters
pContext
[in/out] Pointer to the
context.
pDest
[out] Pointer to the text
buffer that will receive the checksum.
bUpper
[in] Uppercase flag.
If
bUpper is 0, the received checksum represents a lowercase string,
otherwise it represents an uppercase string.
Remarks
Call this function to retrieve the checksum from the
context pointed by pContext. 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 SLC_CRC16C_HEXDIGESTSIZE characters.
After the SL_CRC16C_FinalHex function is performed, the
context is initialized for new calculations, as it would be called
SL_CRC16C_Init again.
Example
#include <stdio.h>
#include <QuickHash.h>
#define BUFF_SIZE 1024
int main()
{
FILE* file;
unsigned char buff[ BUFF_SIZE ];
unsigned char context[ SLC_CRC16C_CONTEXTSIZE ];
char checksumhex[ SLC_CRC16C_HEXDIGESTSIZE ]; /*0 terminated*/
file = fopen( "c:\\test.txt", "rb" );
if( file == NULL )
return 1;
/*****Initialize the context before calling Update, Final, or FinalHex****/
SL_CRC16C_Init( context );
/*****Calculate the checksum by calling Update for each block of the file***/
while( !feof( file ) )
{
unsigned int nCount = fread( buff, sizeof( char ), BUFF_SIZE, file );
SL_CRC16C_Update( context, buff, nCount );
}
/*****Do final changes and get the checksum in hex format*******************/
SL_CRC16C_FinalHex( context, checksumhex, 0 );
/*****Use the checksum******************************************************/
/*...*/
fclose( file );
return 0;
}
|
|
CRC16C API Overview
| CRC16C API Functions
|
Useful Links | HashCalc
See Also
SL_CRC16C_Final,
SL_CRC16C_Update,
SL_CRC16C_UpdateStr,
SL_CRC16C_Init
|