#include <stdio.h>
main()
{
/*%d所能输出的范围*/
printf("%d \n", 0xffffffff); //%d所能输出的32位整数, 最大负整数
printf("%d \n", 0x7fffffff); //%d所能输出的32位整数, 最大正整数
/* 单双精度浮点变量a,b,c,d在内存中的地址和内容
* 变量按地址从高往低存储, 值的低位放低地址, 高位放高地址
*/
//0012FF66 CC CC CC CC CC CC 00 00 00 00 烫烫烫.
//0012FF70 00 20 39 40 00 80 C8 42 00 00 . 9@..菳..
//0012FF7A C9 41 00 00 C9 C1 C0 FF 12 00 葾..闪.
float a=-25.125; //4字节存储: 1位符号,8位阶码,23位尾数;
//16进制为C1C90000; 二进制为1 10000011 10010010000000000000000B
float b= 25.125; //4字节存储: 1位符号,8位阶码,23位尾数;
//16进制为41C90000; 二进制为0 10000011 10010010000000000000000B
float c= 100.25; //4字节存储: 1位符号,8位阶码,23位尾数;
//16进制为43C88000; 二进制为0 10000101 10010001000000000000000B
double d=25.125; //8字节存储 0012FF70: 00 00 00 00 00 20 39 40
return 0;
}
main()
{
/*%d所能输出的范围*/
printf("%d \n", 0xffffffff); //%d所能输出的32位整数, 最大负整数
printf("%d \n", 0x7fffffff); //%d所能输出的32位整数, 最大正整数
/* 单双精度浮点变量a,b,c,d在内存中的地址和内容
* 变量按地址从高往低存储, 值的低位放低地址, 高位放高地址
*/
//0012FF66 CC CC CC CC CC CC 00 00 00 00 烫烫烫.
//0012FF70 00 20 39 40 00 80 C8 42 00 00 . 9@..菳..
//0012FF7A C9 41 00 00 C9 C1 C0 FF 12 00 葾..闪.
float a=-25.125; //4字节存储: 1位符号,8位阶码,23位尾数;
//16进制为C1C90000; 二进制为1 10000011 10010010000000000000000B
float b= 25.125; //4字节存储: 1位符号,8位阶码,23位尾数;
//16进制为41C90000; 二进制为0 10000011 10010010000000000000000B
float c= 100.25; //4字节存储: 1位符号,8位阶码,23位尾数;
//16进制为43C88000; 二进制为0 10000101 10010001000000000000000B
double d=25.125; //8字节存储 0012FF70: 00 00 00 00 00 20 39 40
return 0;
}
输出:
-1
2147483647