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

📄 hex_tools.h

📁 以wxWidget撰寫的簡繁體中文轉換程式 已在Linux上編譯過
💻 H
字号:
/*  * Copyright (C) 2006, Dung-Bang Tsai * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. * * ( If you wnat to use this library for commercial use,  *	  feel free to contact me, just cost some money, I could sell *		you the code without GPL license, so you could use this code *		for your product without public your source code.  				) * * Authors: *	Tsai, Dung-Bang <dbtsai@gmail.com> *			*			2006/03/05		at NCKU physics */string NumbertoHex(unsigned short int input){   string result="    ";//unsigned char result[5];	unsigned char table[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};	result[0]=0;	result[1]=0;	result[2]=0;		result[3]=0;	unsigned int aa,bb,cc,dd;		aa = input >> 12;	bb = (input& 0x0F00)  >> 8;	cc = (input & 0x00F0) >> 4;	dd = (input & 0X000F) ;	result[0]=table[aa];	result[1]=table[bb];	result[2]=table[cc];	result[3]=table[dd];	return result;}string Number32toHex(unsigned int input){   string result="        ";//unsigned char result[5];	unsigned char table[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};	result[0]=0;	result[1]=0;	result[2]=0;		result[3]=0; 	result[4]=0;	result[5]=0;	result[6]=0;		result[7]=0; 	unsigned int aa,bb,cc,dd,ee,ff,gg,hh;		aa = input >> 28;	bb = (input & 0x0F000000)  >> 24;	cc = (input & 0x00F00000) >> 20;	dd = (input & 0X000F0000) >> 16;	ee = (input & 0x0000F000) >> 12;	ff = (input & 0x00000F00) >> 8;	gg = (input & 0X000000F0) >> 4;	hh = (input & 0X0000000F) ;		result[0]=table[aa];	result[1]=table[bb];	result[2]=table[cc];	result[3]=table[dd];	result[4]=table[ee];	result[5]=table[ff];	result[6]=table[gg];	result[7]=table[hh];	return result;}unsigned int aHex(char input){	unsigned int table[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; //48~57, 65~70, 	if('0'<=input && input <= '9')		return table[input-'0'];	if('A'<=input && input <= 'F')		return table[input-55];	if('a'<=input && input <= 'f')		return table[input-87];		else		return 0;}unsigned short int HexToNumber(unsigned char* input){	unsigned int table[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; //48~57, 65~70, 	return (aHex(input[0])*16*16*16) + (aHex(input[1])*16*16) + (aHex(input[2])*16) + aHex(input[3]);}unsigned int HexToNumber32(unsigned char* input){	int a = 16;int b=a*16; int c=b*16; int d=c*16; int e=d*16; int f=e*16;int g=f*16;	unsigned int table[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; //48~57, 65~70, 	return ( aHex(input[0])*g + aHex(input[1])*f + 			   aHex(input[2])*e + aHex(input[3])*d + 				aHex(input[4])*c + aHex(input[5])*b + 				aHex(input[6])*a + aHex(input[7])	);}

⌨️ 快捷键说明

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