1、考察指针int (*p)[10]和int *p[10]的区别,用法
2、sizeof(),strlen()的区别和用法
3、堆、栈的区别和用法
3.1、
栈(stack):由编译器自动分配释放,存放函数的参数和局部变量的值。其操作方式类似于数据结构中的栈(先进后出)
堆(heap):一般用程序员通过malloc自动分配,也必须由程序员free释放所占用的内存。
3.2
栈:在Windows下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思
是栈顶的地址和栈的最大容量是系统预先规定好的,在 WINDOWS下,栈的大小是2M(也有的
说是1M,总之是一个编译时就确定的常数),如果申请的空间超过栈的剩余空间时,将提示
overflow。因此,能从栈获得的空间较小。
堆:堆是向高地址扩展的数据结构,是不连续的内存区域。这是由于系统是用链表来存储的
空闲内存地址的,自然是不连续的,而链表的遍历方向是由低地址向高地址。堆的大小受限
于计算机系统中有效的虚拟内存。由此可见,堆获得的空间比较灵活,也比较大。
4、多继承的优点与缺点
多重继承的优点是对象可以调用多个基类中的接口。
多重继承的缺点是容易出现继承向上的二义性。
详见:http://blog.csdn.net/jandunlab/article/details/14110117
5、(1)IO2:30ms, CPU 20ms, IO1 20ms, CPU 30ms
(2) IO1 20ms, CPU 20ms, IO2 10ms
(3) CPU 30ms, IO1 20ms
求三种情况的CPU和IO占用率