c语言整数输出问题

来源:百度知道 编辑:UC知道 时间:2024/05/02 08:35:59
4294967296 超过unsigned long的范围
怎样输出
vc6.0

一楼错了,
printf("%f\n",a);
会保留小数部分:4294967296。00000
应该printf("%。0f\n",a);

用浮点型吧
#include<stdio.h>
main()
{float a;
a=42949.67296e5;
printf("%f\n",a);
}

你用的是VC吧,VC编译器并不标准,使用gcc编译器是不会出现这样问题的,完全够用。
你可以如果非要用VC,你可以试着采用分段的形式,自己设计一种数据结构,将其分段存储和计算。

用__int64就够用了

可以转换成float型或者double型后输出

long long [c99标准]