反转在整数字节的顺序

_byteswap_uint64,

 _byteswap_ulong,

 _byteswap_ushort 

Reverses the order of bytes in an integer.

These function returns the argument value with its bytes in reverse order


或者

template 
T BE(T n)//此操作只能针对无符号数
{
	T temp;
	switch (sizeof(T))
	{
	case 1:
		return(n);break;
	case 2:
		return((n<<8) + (n>>8) );break;
	case 3:
		return( (n<<16) + (n<<8>>16<<8) + (n>>16));break;
	case 4:
		return( (n<<24) +(n<<16>>24<<16) + (n<<8>>24<<8) +(n>>24));break;
	case 8:
		return( (n<<56) +(n<<48>>56<<48) +(n<<40>>56<<40) +(n<<32>>56<<32) +(n<<24>>56<<24) +(n<<16>>56<<16) +(n<<8>>56<<8) +(n>>56));break;
	default:
		return(n);
	}
};

你可能感兴趣的:(c/c++)