⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 int64.hpp

📁 7Zip软件实现: 七种编码格式的压缩与解压缩功能。
💻 HPP
字号:
#ifndef _RAR_INT64_#define _RAR_INT64_#if defined(__BORLANDC__) || defined(_MSC_VER)#define NATIVE_INT64typedef __int64 Int64;#endif#if defined(__GNUC__) || defined(__HP_aCC)#define NATIVE_INT64typedef long long Int64;#endif#ifdef NATIVE_INT64#define int64to32(x) ((uint)(x))#define int32to64(high,low) ((((Int64)(high))<<32)+(low))#define is64plus(x) (x>=0)#elseclass Int64{  public:    Int64();    Int64(uint n);    Int64(uint HighPart,uint LowPart);//    Int64 operator = (Int64 n);    Int64 operator << (int n);    Int64 operator >> (int n);    friend Int64 operator / (Int64 n1,Int64 n2);    friend Int64 operator * (Int64 n1,Int64 n2);    friend Int64 operator % (Int64 n1,Int64 n2);    friend Int64 operator + (Int64 n1,Int64 n2);    friend Int64 operator - (Int64 n1,Int64 n2);    friend Int64 operator += (Int64 &n1,Int64 n2);    friend Int64 operator -= (Int64 &n1,Int64 n2);    friend Int64 operator *= (Int64 &n1,Int64 n2);    friend Int64 operator /= (Int64 &n1,Int64 n2);    friend Int64 operator | (Int64 n1,Int64 n2);    friend Int64 operator & (Int64 n1,Int64 n2);    inline friend void operator -= (Int64 &n1,unsigned int n2)    {      if (n1.LowPart<n2)        n1.HighPart--;      n1.LowPart-=n2;    }    inline friend void operator ++ (Int64 &n)    {      if (++n.LowPart == 0)        ++n.HighPart;    }    inline friend void operator -- (Int64 &n)    {      if (n.LowPart-- == 0)        n.HighPart--;    }    friend bool operator == (Int64 n1,Int64 n2);    friend bool operator > (Int64 n1,Int64 n2);    friend bool operator < (Int64 n1,Int64 n2);    friend bool operator != (Int64 n1,Int64 n2);    friend bool operator >= (Int64 n1,Int64 n2);    friend bool operator <= (Int64 n1,Int64 n2);    void Set(uint HighPart,uint LowPart);    uint GetLowPart() {return(LowPart);}    uint LowPart;    uint HighPart;};inline uint int64to32(Int64 n) {return(n.GetLowPart());}#define int32to64(high,low) (Int64((high),(low)))#define is64plus(x) ((int)(x).HighPart>=0)#endif#define INT64ERR int32to64(0x80000000,0)#define INT64MAX int32to64(0x7fffffff,0)void itoa(Int64 n,char *Str);Int64 atoil(char *Str);#endif

⌨️ 快捷键说明

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