/*默认是八位的数吧, short是16位的~还是用char吧*/
/*这个函数的功能是传一个8位的数进来,返回一个经过高低4位交换的数*/
char exchange(char source)
{
char up = source << 4;/*将source右移取高四位,低四位补0赋值给up,*/
char low = source >> 4;/*将source左移取低四位,高四位补0赋值给low.*/
return up + low;/*两者相加即得经过交换的数,return将其返回给调用函数*/
}
变量什么类型?
可以考虑一下这个
short a,b,c; /*8位整数*/
a=321;
b=a>>4;c=a<<4;
a=b+c
另回复ubendan TC中
Char是位的 Int 是16位的 short全称为short int 8位 long int 32位
char exchange(char souredata)
{
char up = souredata>>4; // right move 4
char low = souredata&0x0f; // left move 4
return ((low&0x0f)<<4)+(up&0x0f);
}
机器上验证OK