手机
当前位置:查字典教程网 >编程开发 >C语言 >求32位机器上unsigned int的最大值及int的最大值的解决方法
求32位机器上unsigned int的最大值及int的最大值的解决方法
摘要:复制代码代码如下:#includeintmain(intargc,char*argv[]){unsignedintmax_int=0-1;p...

复制代码 代码如下:

#include <stdio.h>

int main(int argc, char *argv[])

{

unsigned int max_int = 0-1;

printf("The max value of unsigned int on 32 machine: %u/n", max_int);

}

复制代码 代码如下:

#include <stdio.h>

int main(int argc, char *argv[])

{

unsigned int max_int = 0-1;

printf("The max value of unsigned int on 32 machine: %u/n", max_int);

}

gcc编译后:

int_sizeof1.c: 在函数‘main'中:

int_sizeof1.c:5: 警告:整数溢出

运行后:

The max value of int on 32 machine: 4294967295

VC6.0和java编译后,无错误。

运行后:

The max value of int on 32 machine: 4294967295

复制代码 代码如下:

#include <stdio.h>

int main(int argc, char *argv[])

{

int max_int = (1<<31)-1;

printf("The max value of int on 32 machine: %d/n", max_int);

}

将其int写成有符号型的程序如下:

复制代码 代码如下:

#include <stdio.h>

int main(int argc, char *argv[])

{

int max_int = (1<<31)-1;

printf("The max value of int on 32 machine: %d/n", max_int);

}

gcc编译后:

int_sizeof1.c: 在函数‘main'中:

int_sizeof1.c:5: 警告:整数溢出

运行后:

The max value of int on 32 machine: 2147483647

VC6.0和java编译后,无错误。

运行后:

The max value of int on 32 machine: 2147483647

因为int的最高位是符号位。

【求32位机器上unsigned int的最大值及int的最大值的解决方法】相关文章:

C/C++中退出线程的四种解决方法

C++实现两个日期间差多少天的解决方法

基于WTL中使用双缓冲避免闪烁的解决方法

深入C++浮点数无效值定义与判定的解决办法

深入探讨linux下进程的最大线程数、进程最大数、进程打开的文件数

深入二叉树两个结点的最低共同父结点的详解

ubuntu中打开终端的三种解决方法

深入解析unsigned int 和 int

基于C语言char与unsigned char的区别介绍

c语言中用字符串数组显示菜单的解决方法

精品推荐
分类导航