搜索
查看: 1194|回复: 9
打印 上一主题 下一主题

long long int 最大数?

[复制链接]
跳转到指定楼层
楼主
发表于 2014-4-3 19:33:44 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
#include <stdlib.h>
int main()
{
signed char a=127;
    short int b=32767;
    int c=2147438647;
    long long int d=9000000000000000000LL;
    long long int e=0LL;
    e=a+b+c+d;
    printf("%ld");
system("pause");
return 0;
}


long long int 书上说最大值是  -9 223 372 036 854 775 808~+9 223 372 036 854 775 807   
运行结果为什么得到个垃圾值?

沙发
发表于 2014-4-3 20:02:51 | 只看该作者
printf("%ld");

这句写错了
另外long long是在C99中才标准化的东西,确定你的编译器支持C99
板凳
 楼主| 发表于 2014-4-3 20:08:56 | 只看该作者
rosynirvana 发表于 2014-4-3 20:02
printf("%ld");

这句写错了

去掉( %ld )中间l,还是个垃圾值,还是说只有支持C99的编译器才能用?  我用的就是啊哈编译器!
地板
 楼主| 发表于 2014-4-3 20:09:02 | 只看该作者
rosynirvana 发表于 2014-4-3 20:02
printf("%ld");

这句写错了

去掉( %ld )中间l,还是个垃圾值,还是说只有支持C99的编译器才能用?  我用的就是啊哈编译器!

点评

long long int 在printf应该这样写才是%lld,还有就是少了一个输出的值,  发表于 2014-4-3 20:29
5#
发表于 2014-4-3 20:26:11 | 只看该作者
yangxiaolu 发表于 2014-4-3 20:09
去掉( %ld )中间l,还是个垃圾值,还是说只有支持C99的编译器才能用?  我用的就是啊哈编译器!

完全没有问题呢~~!

abc26.png (6.3 KB, 下载次数: 4)

abc26.png
6#
 楼主| 发表于 2014-4-3 20:41:08 | 只看该作者
李掌柜 发表于 2014-4-3 20:26
完全没有问题呢~~!

感谢,新手刚开始学习!忘记输出值了!!!!!!!

点评

long long int 的最大标示符是LONG_LONG_MAX  发表于 2014-4-3 21:00
limits.h头文件有定义的,long long int 的最大值是9 223 372 036 854 775 807 可以去查看头文件的  发表于 2014-4-3 20:44
7#
发表于 2014-4-3 20:43:09 | 只看该作者
yangxiaolu 发表于 2014-4-3 20:08
去掉( %ld )中间l,还是个垃圾值,还是说只有支持C99的编译器才能用?  我用的就是啊哈编译器!

啊哈C的int64占位符是%I64d,不是%lld
另外你漏写变量了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表