C语言程序设计进阶_第一周:数据类型:整数类型、浮点类型、枚举类型
1.0数据类型
1.1整数类型
1.2浮点类型
1.3逻辑类型
1.4类型转换和条件运算
1.0数据类型
1 整数
char(%c), short, int(%d), long(%ld), long long(C99)
2 浮点数
float(%f), double(%lf), long double(C99)
3 逻辑
bool(C99)
4 指针
5 自定义类型
所表达的数的范围:char<short<int<float<double
sizeof是静态运算符,它的结果在编译时刻就决定了
不要在sizeof的括号里做运算,这些运算不会做的
1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 5 main() 6 { 7 int a = 6; 8 9 printf("sizeof(int)=%d\n", sizeof(int)); 10 11 printf("sizeof(a)=%d\n", sizeof(a++));//sizeof是静态运算符,它的结果在编译时刻就决定了 12 //不要在sizeof的括号里做运算,这些运算不会做的 13 14 printf("a=%d\n", a);//仍然是6 15 16 printf("sizeof(a)=%d\n", sizeof(a + 1.0));//8,变成double 17 18 printf("a=%d\n", a);//仍然是6 19 20 system("pause"); 21 }
1.1整数类型
整数
char:1字节,8比特:-128~127
short:2字节:-32768~32767
int:取决于编译器CPU,通常的意义是1个字
long:取决于编译器CPU,通常的意义是1个字
long long:8字节
1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 5 main() 6 { 7 printf("sizeof(char)=%d\n", sizeof(char)); 8 9 printf("sizeof(short)=%d\n", sizeof(short)); 10 11 printf("sizeof(int)=%d\n", sizeof(int)); 12 13 printf("sizeof(long)=%d\n", sizeof(long)); 14 15 printf("sizeof(long long)=%d\n", sizeof(long long)); 16 17 system("pause"); 18 }
sizeof(char)=1
sizeof(short)=2
sizeof(int)=4
sizeof(long)=4
sizeof(long long)=8
请按任意键继续. . .
整数的范围
1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 #include<limits.h> 5 6 main() 7 { 8 char c = 255; 9 int i = 255; 10 11 printf("c=%d,i=%d\n", c, i);//char超出范围,所以显示-1 12 13 printf("%d,%d\n", CHAR_MAX, CHAR_MIN);//127 -128 14 15 system("pause"); 16 }
补码
0000 0001(1)+1111 1111(-1)=(1)0000 0000
1111 1111被当作纯二进制看待时,是255,被当作补码看待时是-1
同理,对于-a,其补码就是0-a,实际是2^n-a,n是这种类型的位数
1.2浮点类型
1.3逻辑类型
1.4类型转换和条件运算
时间: 2024-10-25 03:05:19