C专家编程
NUL:用于结束一个ACSII字符串
NULL:用于表示什么也不指向,空指针
break:跳出最近的那层循环或者switch语句
指针和数组的区别:
定义:只出现一次,确定对象的类型并分配内存,如 int my_array[5];
声明:多次出现,声明是说我引用了一个别处存在的变量,因此不产生分配内存的步骤。extern int my_array[ ];因此也无需带着长度。
指针:保存数据的地址;间接访问数据,先访问指针值,再访问值的地址数据;通常用于动态数据结构
数组:保存数据;直接访问数据,更快;通常用于长度已知的数据结构
动态库问价扩展名:.so-----"shared object"共享对象:每个链接到该函数库的程序都 共享它的同一份拷贝。
堆栈指的是栈stack
堆:指的是Heap
绝大多数机器,程序从main开始执行,堆栈向下生长。
现在很多时候软件的性能被CPU和内存之间的性能影响,CPU从内存中读数据很慢,内存性能差导致CPU寄存器和内存的速度之间的差距太大!
读操作:先去高速缓存cache找数据,有立即提取;没有由cache向内存请求
C++访问控制:
模板template就是多态的一种体现。