c/c++面试题

来源:互联网 发布:javascript实例大全 编辑:程序博客网 时间:2024/06/05 03:35


1.static 有什么用?(至少说两种)

1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值保持不变。

2)在模块内(但在函数体外),一个被声明为静态的变量可以把被模块内所有函数访问,,但不能被模块内所有函数访问,但不能被模块外其他函数访问,他是一个本地的全局变量。

3)在模块内,一个被声明为静态的函数只可能被这一模块内的其他函数调用,那就是,这个函数被限制在声明它的本地范围内使用。

2.引用与指针的区别

1)引用必须初始化,指针不会。

2)引用初始化后不能被改变,指针可以改变所指的对象。

3)不存在指向空值的引用,但是存在指向空值的指针。


3.描述实时系统的基本特性

在特定时间内完成特定的任务,实时性与可靠性。

4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?

  全局变量存储在静态数据区,局部变量在堆栈

5.什么是平衡二插树?

左右子树都是平衡二插树,且左右子树的深度差值的绝对值不大于1

6.堆栈溢出一般都是什么原因导致的?

没有回收垃圾资源

7.什么函数不能声明为虚函数?

 construcuor(构造函数)函数不能声明为虚函数;


8.冒泡排序算法的时间复杂度是什么?

时间复杂度O(n^2)



9.写出float x与零值的比较的if语句

if(x>0.000001&&x<-0.000001)

10.Internet采用哪种网络协议?该协议的主要层次结构?

TCP/IP协议

主要层次结构为: 应用层/传输层/网络层/数据链路层/物理层














原创粉丝点击