C++中异或的使用例题?
如何设计一个程序将数据第一个字节的位(bit)全部反转(提示:使用^运算符)。提示:任意一位与1进行XOR运算由于XOR运算具有排它特性,因此若原位为0,则0^1得1,若...
如何设计一个程序将数据第一个字节的位(bit)全部反转(提示:使用^运算符)。提示:任意一位与1进行XOR运算由于XOR运算具有排它特性,因此若原位为0,则0^1得1,若原位为1,则1^1得0,使用此运算即可进行位(bit)反转。
展开
展开全部
这是要将什么数据的第一个字节的位(bit)全部反转(提示:使用^运算符)?
以下的代码段能将一个int 的第一个字节全部反转:
int x;
scanf("%d",&x);
x=x^0xff000000;
以下的代码段能将一个int 的第一个字节全部反转:
int x;
scanf("%d",&x);
x=x^0xff000000;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//以下函数能将任意基本整数类型的第一个字节全部反转
template <typename _T>
inline _T reverse(_T a) {
return a ^ ((~(_T(0))) << ((sizeof(_T) - 1) * 8));
}
template <typename _T>
inline _T reverse(_T a) {
return a ^ ((~(_T(0))) << ((sizeof(_T) - 1) * 8));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询