C专家编程

Posted henry-zhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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就是多态的一种体现。

技术图片

 

以上是关于C专家编程的主要内容,如果未能解决你的问题,请参考以下文章

《C专家编程》:全面回顾认识C++

C专家编程

《C专家编程》数组和指针并不同--多维数组

C专家编程

《C专家编程》数组和指针并不同--多维数组

《C专家编程》:再论指针