0
问答首页 最新问题 热门问题 等待回答标签广场
我要提问

一个unsigned int变量,取出相邻的两位赋值给一个unsigned char



请问如何做最方便?

我先来一个
unsigned char =  ((NumFlag/10%10<<4)  |  NumFlag%10);

取出来后怎么加回去啊?

提问者:kdkashd 地点:- 浏览次数:9425 提问时间:07-16 15:48
我有更好的答案
提 交
6条回答
shuqingli 07-20 08:15
够精简了。。。
60user74 07-22 10:34
unsigned char ucTmp =  (NumFlag & 0x03);
吔屎拉雷 07-25 14:53


怎么塞回去?
与或非都是按位来的,十进制有什么好办法啊?
wzx_1995 07-23 07:48
啊,你说的是十进制呀?那就取出来写
unsigned char ucTmp =  (NumFlag % 100);
塞回去写
NumFlag = (NumFlag/100)*100 + ucTmp;

q11234867845 07-23 05:23
明白了 tks
潘涛12345 07-23 07:45
//取出来
    Temp =  (((setstr/10%10)*10)    +  setstr%10);
    Temp =  (((setstr/100%10)*10)   +  setstr/10%10);
    Temp =  (((setstr/1000%10)*10)  +  setstr/100%10);
    Temp =  (((setstr/10000%10)*10) +  setstr/1000%10);
//塞回去
    Temp = 11;
    setstr = (setstr/100)*100 + Temp;
    Temp = 22;
    setstr = (setstr/1000)*1000 + setstr%10 + Temp*10;
    Temp = 33;
    setstr = (setstr/10000)*10000 + setstr%100 + Temp*100;
    Temp = 44;
    setstr = (setstr/100000)*10000 + setstr%1000 + Temp*1000;
撰写答案
提 交
1 / 3
1 / 3