今天到图书馆想找C Primer Plus,只找到了习题解析,没找到书😪,真的栓Q
无奈之下,拿了一本清华出版社的小甲鱼学C看,先重新看了下之前的内容,学了一些后面的内容
接下来补了下定义符号define(不知道为啥网课上没看到这个知识点),了解sizeof,(un)signed,取值范围等等
1.sizeof
sizeof运算符用于获得数据类型或者表达式的尺寸,有以下3种使用方式
- sizeof(type_name);//sizeof(类型)
- sizeof(object); //sizeof(对象)
- sizeof object; //sizeof 对象
例子:将当前编译系统的基本数据类型所占尺寸信息打印出来
#include <stdio.h>
int main(int argc, char** argv){
printf("int = %d\n",sizeof(int));
printf("short int =%d\n",sizeof(short));
//以此类推long int,char等
return 0;
}
2.(un)signed
(un)signed用于限定char类型和任何整型变量的取值范围。
signed表示该变量是带符号位的,unsigned表示该变量不带符号位。带符号位的变量可以表示复数,反之则只能表示正数,其中不带符号位的存储空间比带符号位的要大1倍
有了这两个玩意,整型就有了8种
- [signed] short [int]
- unsigned short [int]
以此类推,有8种
ps:至于为什么一会有[ ]一会又没有[ ],我也不及丢啊,作者也没给出解释😂
3.取值范围
感觉也没啥,主要是了解了pow函数,用于进行幂运算,如pow(2,3)返回的是8,还有%u,表示输出无符号整数
4.字符
ASCII字符表——将二进制数与英文字符一一对应
顺便复习一下
- %d 有符号10进制整数(%ld 长整型,%hd短整型 )
- %hu 无符号短整形(%u无符号整形,%lu无符号长整形)
- %i 有符号10进制整数 (%i 和%d 没有区别,%i 是老式写法,都是整型格式)
- %o 无符号8进制整数
- %u 无符号10进制整数
- %x 无符号的16进制数字,并以小写abcdef表示
- %X 无符号的16进制数字,并以大写ABCDEF表示
- %f 输入输出为浮点型 (%lf双精度浮点型)
- %E/e 用科学表示格式的浮点数
- %c 输入输出为单个字符
- %s 输入输出为字符串
最后,学了交换数值方法以及判断奇偶数
感觉自己学的好慢😪,网课有点看不下去,看题目配合看书感觉要更有兴致,慢慢来吧
明天高数测试,今晚还得与高数共剪西窗烛
That's all.