现在的位置: 首页 > 综合 > 正文

int溢出的问题

2018年05月13日 ⁄ 综合 ⁄ 共 443字 ⁄ 字号 评论关闭

今天,在论坛上看到一个帖

http://bbs.csdn.net/topics/390397669?page=1#post-393964523

后面有我的回复

总结了下 

获取与编译器相关的int、char、long的最大值的方法分别为

1) 使用头文件 <limits.h> 里面分别有关于最大、最小的char 、int、long的值。

2) 分别将-1转换成对应的unsigned char 、unsigned int、unsigned long值

#include <stdio.h>

int main()
{
    unsigned char max_char = (unsigned char )-1;
    unsigned int max_int = (unsigned int )-1;
    unsigned long max_long = (unsigned long )-1;
    fprintf(stderr,"%d %u %ul\n",max_char,max_int,max_long);
    return 0;
}

在mac下 输出

255 4294967295 4294967295l

抱歉!评论已关闭.