xcrc.h

来自「BCB的学习资料」· C头文件 代码 · 共 47 行

H
47
字号
//---------------------------------------------------------------------------

#ifndef XCRCH
#define XCRCH
//---------------------------------------------------------------------------
#ifndef XByteBufferH
#include <XByteBuffer.h>
#endif

namespace zdhsoft
{
/*
///////////////////////////////////////////////////////////////////////////////
[Name]XCRC
[Title]CRC生成类
///////////////////////////////////////////////////////////////////////////////
[Description]
    XCRC生成类,提供了4个生成CRC32方法,及4个生成CRC16方法
[Version]2.0
[Author]Rex Winter
[Date]2005-6-24
//////////////////////////////////////////////////////////////////////////////
*/
class XCRC
{
public:
    //生成取并得CRC32的值
    static XDWord CRC32(const void * data,int size);
    static XDWord CRC32(const XArray<XByte> & data);
    static XDWord CRC32(const XDynamicArray<XByte> &data);
    static XDWord CRC32(const XByteBuffer & data);
    //生成取并得CRC16的值
    static XWord CRC16(const void * data,int size);
    static XWord CRC16(const XArray<XByte> & data);
    static XWord CRC16(const XDynamicArray<XByte> &data);
    static XWord CRC16(const XByteBuffer & data);
private:
        static XInt m_crcTable32[256];     //crc32表,在init中被始化
        static XInt m_crcTable16[256];     //crc16表
private:
        static void initTable32();        //初始化表的方法
        static void initTable16();        //初始化表的方法
};

};
#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?