/*
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; }
|