东软C/C++笔试题及参考答案

进修社 人气:4.14K

1 在C/C++中static有什么用途?(请至少说明两种)

东软C/C++笔试题及参考答案

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

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

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

2 引用与指针有什么区别?

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

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

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

char szstr[10]; strcpy(szstr,”0123456789″); 产生什么结果?为什么?

3 字符串需要11个字节才能存放下(包括末尾的’’),而szstr只有10个字节的`空间,strcpy会导致数组越界。

4 写出float x 与“零值”比较的if语句。

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

5 Internet采用哪种网络协议?该协议的主要层次结构?Internet物理地址和IP地址转换采用什么协议?

a) TCP/IP协议

b) 主要层次结构为: 应用层/传输层/网络层/数链路层。

c) ARP (Address Resolution Protocol)(地据址解析协议)

6 举两个C语言中不能做switch()的参数类型

7 实型(float,Double)

说说你对集成测试中自顶向下集成和自底向上集成两个策略的理解,要谈出它们各自的优缺点和主要适应于哪种类型测试;

1、自顶向下集成

优点:较早地验证了主要控制和判断点;按深度优先可以首先实现和验证一个完整的软件功能;功能较早证实,带来信心;只需一个驱动,减少驱动器开发的费用;支持故障隔离。

缺点:柱的开发量大;底层验证被推迟;底层组件测试不充分。

适应于产品控制结构比较清晰和稳定;高层接口变化较小;底层接口未定义或经常可能被修改;产口控制组件具有较大的技术风险,需要尽早被验证;希望尽早能看到产品的系统功能行为。

2、自底向上集成

优点:对底层组件行为较早验证;工作最初可以并行集成,比自顶向下效率高;减少了桩的工作量;支持故障隔离。

缺点:驱动的开发工作量大;对高层的验证被推迟,设计上的错误不能被及时发现。

适应于底层接口比较稳定;高层接口变化比较频繁;底层组件较早被完成。