做理财的网站有哪些问题,云南网是什么性质的单位,电商网站用什么框架做,互联网营销师怎么考1. short和long 1 short和long可以提供不同长度的整型数#xff0c;也就是可以改变整型数的取值范围。在64bit编译器环境下#xff0c;int占用4个字节#xff08;32bit#xff09;#xff0c;取值范围是-231~231-1#xff1b;short占用2个字节#xff08;16bit…1. short和long 1 short和long可以提供不同长度的整型数也就是可以改变整型数的取值范围。在64bit编译器环境下int占用4个字节32bit取值范围是-231~231-1short占用2个字节16bit取值范围是-215~215-1long占用8个字节64bit取值范围是-263~263-1 2 总结一下在64位编译器环境下short占2个字节(16位)int占4个字节(32位)long占8个字节(64位)。因此如果使用的整数不是很大的话可以使用short代替int这样的话更节省内存开销。 3 世界上的编译器林林总总不同编译器环境下int、short、long的取值范围和占用的长度又是不一样的。比如在16bit编译器环境下long只占用4个字节。不过幸运的是ANSI \ ISO制定了以下规则 short跟int至少为16位(2字节) long至少为32位(4字节) short的长度不能大于intint的长度不能大于long char一定为为8位(1字节)毕竟char是我们编程能用的最小数据类型 4 可以连续使用2个long也就是long long。一般来说long long的范围是不小于long的比如在32bit编译器环境下long long占用8个字节long占用4个字节。不过在64bit编译器环境下long long跟long是一样的都占用8个字节。 5 还有一点要明确的是short int等价于shortlong int等价于longlong long int等价于long long 2. signed和unsigned 1 首先要明确的signed int等价于signedunsigned int等价于unsigned 2 signed和unsigned的区别就是它们的最高位是否要当做符号位并不会像short和long那样改变数据的长度即所占的字节数。 signed表示有符号也就是说最高位要当做符号位所以包括正数、负数和0。其实int的最高位本来就是符号位已经包括了正负数和0了因此signed和int是一样的signed等价于signed int也等价于int。signed的取值范围是-231 ~ 231 - 1 unsigned表示无符号也就是说最高位并不当做符号位所以不包括负数。在64bit编译器环境下面int占用4个字节32bit因此unsigned的取值范围是0000 0000 0000 0000 0000 0000 0000 0000 ~ 1111 1111 1111 1111 1111 1111 1111 1111也就是0 ~ 232 – 1 3.代码 1 #include stdio.h2 /*3 int 4个字节 %d4 short 2个字节 %d5 long 8个字节 %ld6 long long 8个字节 %lld7 8 9 signed
10 unsigned %u
11 */
12 int main()
13 {
14 // 0000 0000 0000 0000 0000 0000 0000 0000
15 // 2的31次方-1
16 // 2的32次方-1
17 int num;
18
19 /*
20 signed和unsigned的区别
21 signed 最高位要当做符号位
22 unsigned 最高位不要当做符号位
23 */
24 // signed signed int
25 // signed 有符号:正数、0、负数
26 signed int a 10;
27 signed a2 10;
28
29 // unsigned int unsigned
30 // unsigned 无符号0、正数
31 unsigned int b 10;
32 unsigned b2 10;
33
34 long unsigned int c 34343;
35 long unsigned c2 423432;
36
37 short unsigned int d 4343;
38 short unsigned d2 43243;
39
40 short signed int e 54354;
41 short signed e2 434;
42
43
44
45
46 return 0;
47 }
48
49 void longAndShort()
50 {
51 // long long int
52 long int a 100645654654645645l;
53 long a2 100645654654645645l;
54
55 // long long int long long
56 long long int c 100645654654645645ll;
57 long long c2 4535435435435ll;
58
59 // short short int
60 short int d 5454;
61 short d2 43434;
62
63 //printf(%lld\n, c);
64
65 int s sizeof(long long int);
66 printf(%d\n, s);
67 } 转载于:https://www.cnblogs.com/dssf/p/4587310.html