怎样才能得到正确结果.

2019-07-22 13:50发布

unsigned long cnt32;
unsigned  int x,y;
x=400;
y=400;

cnt32 = x*y;     编译正常不报警,但运算结果为0x27100的低16位0x7100,而不0x27100

cnt32 = 400*400;     报警提示 integer operation result is out of range

请问,怎样才能得到正确结果.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。