1、计算数组长度
通常做法:
int array[] = {1, 2, 3, 4};
unsized int count = sizeof(array) / sizeof(typeof(array[0]));
不过有一个问题,如果你要判断的这个数组是作为参数传入函数内部的话,上述办法不可行。
一般是要求同时传入数组长度的。否则没有办法。
2、硬盘分为:固态硬盘(SSD)和机械硬盘(HDD);
2.1 、机械硬盘:就像VCD或DVD,由一个精密电机带动光盘快速转动来让探头读取和写入数据。
2.2、就像手机内存卡或U盘,内部有上亿个电子元器件,非常细小,达到纳米级别,通过电路来读取和写入数据。
3、fflush(stdin);用来清空输入缓冲区;
在内存中,有一块区域(比如512字节)专门用来保存用户输入的数据,遇到 scanf 时,程序会首先检查该区域是否有数据:
如果没有,就等待用户输入,用户从键盘输入的每个字符都会暂时保存到这里,直到按下回车键,输入结束,scanf 再从这里读取数据,赋值给变量。
如果有数据,哪怕是一个字符,scanf 也会直接读取,不会等待用户输入。
这块内存区域,就叫做缓冲区(Buffer),或者缓存(Cache);又因为它是用来暂存用户输入的数据的,所以又叫输入缓冲区。
缓冲区与普通的内存没有什么两样,都是物理内存上的若干字节,只是作用不同而已。
4、C语言关键字及其解释[共32个] : c.biancheng.net/cpp/html/797.html
5、实际上,rand() 函数产生的随机数是伪随机数,是根据一个数按照某个公式推算出来的,这个数我们称之为“种子”,但是这个种子在系统启动之后就是一个定值,我们需要用 srand() 来进行播种,即在int a前加一句:srand((unsigned)time(NULL));//这里利用时间进行播种,需要time.h
6、标准C语言(ANSI C)共定义了15 个头文件,称为“C标准库”,所有的编译器都必须支持,如何正确并熟练的使用这些标准库,可以反映出一个程序员的水平。
合格程序员:stdio.h ctype.h stdlib.h string.h
熟练程序员:assert.h limits.h stddef.h time.h
优秀程序员:float.h math.h error.h locale.h setjmp.h signal.h stdarg.h
7、C语言内存模型(内存组织方式):c.biancheng.net/cpp/html/2857.html
8、