@TOC
心得总结
C语言的数据类型分为四种,基本类型(short,int,long,float,double,char)、构造类型(array,struct,union,enum)、指针类型、void空类型。
不管是32位系统还是64位系统,只有long类型的大小是不同的,前者是4字节,后者是8字节。不过,long long类型的是个什么类型,8个字节我平时没怎么用过啊。
int abc=189;//这不是赋值语句,这是定义abc变量时顺带初始化,值为189
short def=190;
def-198; //这是赋值语句。
- 不赋初值的变量,不应该拿来参与计算。换句话说,所有参与运算的变量,都应该赋初值。
- C语言和其他脚本语言的区别在于,先定义后使用的原则,需要牢记,但是目前编译器就会报警。
- unsigned xxx=5;编译居然能通过,也不报错。
- sizeof是运算符,不是函数,强制类型转化也不是函数,而是强制类型转化运算符。
问题
1、全角符号和半角符号,我这输入法没有全角符号啊。奇怪。
2、如何判断搜索引擎说的对不对呢?哪里有比较靠谱的回答?
3、感觉long long类型和int类型也别无两样啊。为什么您上课写的代码一直都用long,为什么开发时候不用long类型?
4、这189是什么?放在哪里?代码段?程序一运行从拿来的?
5、字符型数据应该就是字符型常量吧?字符串常量存放的位置在哪?
6、\和这个\两个都能作为1字节存放到char类型的字符常量,\0就不显示出来,其他都能显示出来是吗?是说后面的东西放在print的缓冲区直接都抹去了?
7、我发现我对printf这个命令一无所知。
8、Alt+6这个玩意看内存,好像啥也看不出来啊。
9、P26 两个float相加,auto能看出来是float类型?有点奇怪哦
10、函数和运算符有啥关系?这点没搞清楚。
11、P29 三目运算符是从右到左吗
12、3*b-2怎么解释,给我个说法,哼
进步点
1、shift就能切换
2、多看几个就是了
3、long这个类型跨平台会出现问题
4、字符型常量和数值型常量都不需要考虑放在哪里,而字符串型常量会放在内存的代码段,感觉自己理解了30%。
6、
const char * test = "c:\\abc.txt";
char test1 = '\\';
char test2 = '\0';
char test3 = '\01';
char test4 = '\012';
7、linux上是有缓冲区的,而window上是没有缓冲区的。目前知道能发送数据就好
8、在调试运行阶段,这个写在调试->内存->内存1
9、declytype,boost库可以解决。
10、函数是函数,运算符是运算符,它是完全不同的概念和机制
11、不要管这个了
12、-2肯定是负数而不是减号,不存在计算机分辨不出符号和减号的情况
总结
P31 按摩椅会不会感到开心呢,这是一个问题?