当前位置: 首页 > news >正文

数据类型——long long

在C语言中,long long 类型是一种有符号的64位整数,其取值范围由二进制补码表示法决定。以下是具体数值及解释:


1. long long 的最大值

  • 最大值(正数)9223372036854775807
    计算方式2^63 - 1
    这是因为最高位是符号位(0表示正数),剩余的63位用于数值。

  • 最小值(负数)-9223372036854775808
    计算方式-2^63
    二进制补码表示法中,负数的最小值比正数最大值多一个单位。


2. 如何获取这些值?

C标准库 <limits.h> 中定义了以下宏,可直接在代码中使用:

  • LLONG_MAX:表示 long long 的最大值(9223372036854775807)。
  • LLONG_MIN:表示 long long 的最小值(-9223372036854775808)。
示例代码:
#include <stdio.h>
#include <limits.h>

int main() {
    printf("long long 最大值: %lld\n", LLONG_MAX);
    printf("long long 最小值: %lld\n", LLONG_MIN);
    return 0;
}

3. unsigned long long 的最大值

若使用无符号类型 unsigned long long(64位全用于数值):

  • 最大值18446744073709551615
    计算方式2^64 - 1
  • 对应的宏为 ULLONG_MAX
示例代码:
#include <stdio.h>
#include <limits.h>

int main() {
    printf("unsigned long long 最大值: %llu\n", ULLONG_MAX);
    return 0;
}

4. 应用场景

  • 大整数计算:处理超过 intlong 范围的数值(如金融计算、科学模拟)。
  • 避免溢出:在循环或数学运算中,确保结果不超出范围。例如:
    long long a = LLONG_MAX;
    long long b = 1;
    long long sum = a + b; // 这里会导致溢出(未定义行为)!
    
    需通过条件判断或使用大数库(如GMP)来规避溢出风险。

5. 注意事项

  • 平台兼容性:C标准规定 long long 至少为64位,但实际大小可通过 sizeof(long long) 验证。
  • 打印格式:使用 %lld%llu 正确格式化输出:
    long long x = 123456789012345LL;
    unsigned long long y = 18446744073709551615ULL;
    printf("%lld, %llu\n", x, y);
    

总结

类型最大值最小值宏定义
long long9223372036854775807-9223372036854775808LLONG_MAX/MIN
unsigned long long184467440737095516150ULLONG_MAX

如果需要处理更大的数值,需依赖高精度库(如GMP)或自定义数据结构。

相关文章:

  • Jupyter Notebook 入门教程
  • P8:使用pytorch实现YOLOv5-C3模块
  • STM32之软件SPI
  • DeepSeek 医疗大模型微调实战讨论版(第一部分)
  • 一周学会Flask3 Python Web开发-SQLAlchemy连接Mysql数据库
  • 【LLM】从零开始实现 LLaMA3
  • 操作系统 1.5-系统调用的实现
  • STM32之硬件SPI
  • 大语言模型学习--向量数据库
  • 【spring】注解版
  • Python通过SSH隧道访问数据库
  • 操作系统 1.6-操作系统历史
  • 选择排序算法的SIMD优化
  • Redis 内存淘汰策略深度解析
  • 【算法】快速排序的艺术:从理论到C++高效实现
  • 白盒测试(4):电源瞬态电流测试
  • 查询端口是否开放方法总结
  • Java数据结构第十九期:解构排序算法的艺术与科学(一)
  • SpringUI:打造高质量Web交互设计的首选元件库
  • Python ❀ Unix时间戳转日期或日期转时间戳工具分享
  • 电商网站seo公司/做什么推广最赚钱
  • 做网站需要留什么/本地广告推广平台哪个好
  • 做网站的公司哪些靠谱/国内做seo最好的公司
  • 教育类网站怎么做/除了91还有什么关键词
  • 网站开发设计方案书/千锋培训机构官网
  • o2o平台有哪些网站/网站优化策划书