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

📄 unicode.hpp

📁 source code for unrar3.3.4,uppack the .rar files,for multi-os
💻 HPP
字号:
#ifndef _RAR_UNICODE_#define _RAR_UNICODE_#ifndef _EMX#define MBFUNCTIONS#endif#if defined(MBFUNCTIONS) || defined(_WIN_32)#define UNICODE_SUPPORTED#endif#ifdef _WIN_32#define DBCS_SUPPORTED#endifvoid WideToChar(const wchar *Src,char *Dest,int DestSize=0x10000000);void CharToWide(const char *Src,wchar *Dest,int DestSize=0x10000000);byte* WideToRaw(const wchar *Src,byte *Dest,int DestSize=0x10000000);wchar* RawToWide(const byte *Src,wchar *Dest,int DestSize=0x10000000);void WideToUtf(const wchar *Src,char *Dest,int DestSize);void UtfToWide(const char *Src,wchar *Dest,int DestSize);int strlenw(const wchar *str);wchar* strcpyw(wchar *dest,const wchar *src);wchar* strncpyw(wchar *dest,const wchar *src,int n);wchar* strcatw(wchar *dest,const wchar *src);wchar* strncatw(wchar *dest,const wchar *src,int n);int strcmpw(const wchar *s1,const wchar *s2);int strncmpw(const wchar *s1,const wchar *s2,int n);int stricmpw(const wchar *s1,const wchar *s2);int strnicmpw(const wchar *s1,const wchar *s2,int n);wchar *strchrw(const wchar *s,int c);wchar* strrchrw(const wchar *s,int c);wchar* strpbrkw(const wchar *s1,const wchar *s2);wchar* strlowerw(wchar *Str);wchar* strupperw(wchar *Str);int toupperw(int ch);int atoiw(const wchar *s);#ifdef DBCS_SUPPORTEDclass SupportDBCS{  public:    SupportDBCS();    void Init();    char* charnext(const char *s);    char *strchrd(const char *s, int c);    char *strrchrd(const char *s, int c);    void copychrd(char *dest,const char *src);    bool IsLeadByte[256];    bool DBCSMode;};extern SupportDBCS gdbcs;inline char* charnext(const char *s) {return (char *)(gdbcs.DBCSMode ? gdbcs.charnext(s):s+1);}inline char* strchrd(const char *s, int c) {return (char *)(gdbcs.DBCSMode ? gdbcs.strchrd(s,c):strchr(s,c));}inline char* strrchrd(const char *s, int c) {return (char *)(gdbcs.DBCSMode ? gdbcs.strrchrd(s,c):strrchr(s,c));}inline void copychrd(char *dest,const char *src) {if (gdbcs.DBCSMode) gdbcs.copychrd(dest,src); else *dest=*src;}inline bool IsDBCSMode() {return(gdbcs.DBCSMode);}inline void InitDBCS() {gdbcs.Init();}#else#define charnext(s) ((s)+1)#define strchrd strchr#define strrchrd strrchr#define IsDBCSMode() (true)inline void copychrd(char *dest,const char *src) {*dest=*src;}#endif#endif

⌨️ 快捷键说明

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