这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » PIC开发系列问题( 加法、乘法的最安全的表示方法)

共1条 1/1 1 跳转至

PIC开发系列问题( 加法、乘法的最安全的表示方法)

助工
2014-10-09 17:35:01     打赏
#include<16c71.h>
#include<math.h>
unsigned int a, b;
unsigned long c;
void main()
{ a=200;
  b=2;
  c=a*b;
} /*得不到正确的结果c=400*/


   原因是Mplab-C以8×8乘法方式来编译c=a*b,返回单字节结果给c,结果的溢出被忽略。改上例中的“c=a*b;”表达式为“c=a;c=c*b;”,最为安全(对加法的处理同上)


共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]