很简单一个代码。就是分离出f中的各个位的数。为什么我这种方法得到的结果不对???我觉得方法没错了。请问为什么结果不对(结果如图)?顺便再问下ccs中的求余运算。%和mod都不能用那怎么求余?谢谢了
#include <msp430.h>
int ge,shi,bai,qian,wan,shiwan;
long int f;
void main()
{
WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗
f=984608;
shiwan=f/100000;
wan=(f-shiwan*100000)/10000;
qian=(f-shiwan*100000-wan*10000)/1000;
bai=(f-shiwan*100000-wan*10000-qian*1000)/100;
shi=(f-shiwan*100000-wan*10000-qian*1000-bai*100);
ge=f-shiwan*100000-wan*10000-qian*1000-bai*100-shi*10;
}
user5274669:
已解决;但是扔不知道ccs中的取余怎么操作
灰小子:
回复 user5274669:
int和 char用 %没问题,这都是常用的。float没用过取余。或者你用long int来试试。
这个东西和编译器的存储类型等有关系。