A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xuezhangjun 中级黑马   /  2016-11-15 19:17  /  3007 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*

int类型的修饰符:short, long, long long.
作用:用来指定int类型的变量在内存中占用的字节数.

一个int类型的变量在内存中占用4个字节,每个字节在内存中有8个二进制位,
一个字节一共是32个二进制位,最高位表示符号位,所以有31位参与表示数据,
所以一个字节可以表示"负2的31次方"到"正二的31次方-1"之间的整数;
即:-2147483648 ~ 2147483647

1> short 修饰符
在声明一个int类型的变量的时候,可以使用short修饰符修饰.
例如:short int num = 10;
被short修饰的int类型的变量在内存中只占据2个字节,包含16个二进制位.
最高位表示符号位,有15位参与表示数据.
所以short int可以表示-2的15次方到+2的15次方-1之间的整数.
即:-32768 ~ 32767

使用"%hd"来输出被short修饰符修饰的int类型的变量的值.

声明short int类型变量的时候可以省略int,直接写short.


2>long修饰符
在声明一个int类型的变量的时候,可以使用long修饰符修饰.
例如:long int num = 10;
被long修饰的int类型的变量在32位操作系统下,占据4个字节,在64位操作系统之下占据8个字节(OSX系统还有IOS系统都是64位的)
最高位表示符号位,有63位参与表示数据.
所以long int可以表示-2的63次方到+2的63次方-1之间的整数.

使用"%ld"来输出被long修饰符修饰的int类型的变量的值.

声明long int类型变量的时候可以省略int,直接写long.


3>long long 修饰符
在声明一个int类型的变量的时候,可以使用long long修饰符修饰.
例如:long long int num = 10;
被long long修饰的int类型的变量在32位操作系统,在64位操作系统之下占据8个字节(OSX系统还有IOS系统都是64位的)
最高位表示符号位,有63位参与表示数据.
所以long int可以表示-2的63次方到+2的63次方-1之间的整数.

使用"%lld"来输出被long修饰符修饰的int类型的变量的值.

声明long long int类型变量的时候可以省略int,直接写long long.


*/
#include <stdio.h>
#include <math.h>

int main()
{
    int min = pow(-2, 31);
    int min1 = INT32_MIN;
    printf("min = %d\tmin1 = %d\n", min, min1);

    int max = pow(2, 30)-1 + pow(2, 30);//注: 0占用了一个数,所以正数最大值为2的32次方-1.
    int max1 = INT32_MAX;
    printf("max = %d\tmax1 = %d\n", max, max1);

    short int shortMin = pow(-2, 15);
    short int shortMin1 = shortMin;
    printf("shortMin = %hd\tshortMin1 = %hd\n", shortMin, shortMin1);

    short int shortMax = pow(2, 14)-1 + pow(2, 14);
    short int shortMax1 = shortMax;
    printf("shortMax = %hd\tshortMax1 = %hd\n", shortMax, shortMax1);

    return 0;
}

您需要登录后才可以回帖 登录 | 加入黑马