英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流

标题: C18的数学计算问题 [打印本页]

作者: winnie    时间: 2009-4-18 15:18
标题: C18的数学计算问题
unsigned  long c;
unsigned int a;
unsigned int b;
c=a*b;
算出来的结果C的高2个字节总是清零,也就是只有16位数。
作者: winnie    时间: 2009-4-18 15:19
正确的用法是c = a;c*=b;
unsigned long c;

unsigned int a,b;

c = a;

c *= b;(用c=a;c*=b;代替c= a*b)

或者...
unsigned long c;

unsigned int a,b;

c=(long)a*(long)b;




欢迎光临 英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 (http://enroobbs.com/) Powered by Discuz! X3.2