c语言中的整数溢出问题

1、以以下程序为例:

复制代码
#include <stdio.h>

int main(void)
{
    int i = 2147483647;    //int类型可以表示的数值范围为 -2147483648 ~ 2147483647
    unsigned int j = 4294967295;  //unsigned int的取值范围为0 ~ 4294967295
    
    printf("%d  %d  %d\n", i, i + 1, i + 2);
    printf("%u  %u  %u\n", j, j + 1, j + 2);
    
    return 0;
}
//运行结果显示,当数值超过数据类型可以表示的最大范围时,数值会从头开始,比如i为
2147483648将从头显示-2147483648,
//j超过其最大可以表示的范围4294967295时,将从0开始表示超出的数值。

复制代码

 

 

 

 

posted @   小鲨鱼2018  阅读(533)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示