您的位置:首页 > 编程语言 > C语言/C++

C++笔试题(二)

2013-11-10 23:52 197 查看

题目

一、选择题(每题3分)

1.对A*p用new A(A*)malloc(sizeof(A))赋值,如下叙述正确的是()

A.malloc分配内存后会调用构造函数初始化,但new函数不会。

B.new分配内存后会调用构造函数初始化,但malloc函数不会。

C.new和malloc分配内存后都会调用构造函数初始化。

D.new和malloc分配内存后都不会调用构造函数初始化。

 

2.private访问属性限制对象的成员可以在()中访问。

A.本类的成员函数

B.main函数

C.父类的成员函数

D.子类的成员函数

 

3.有类模板定义如下:template<class Type> class Dream{}下列类对象的定义中,正确的是()

A.Dream a

B .Dream<class int>a

C.Dream<int> a

D.Dream<class Type> a

 

4.下列关于抽象类的描述中,正确的是()

A.抽象类中最多只能有一个纯虚函数

B.抽象类不能定义该类的指针

C.抽象类不能定义该类的对象

D.抽象类至少有一个虚函数

5.break关键字在哪一种语法结构中不能使用?

A.for语句  B.switch语句  C.if语句
    D.while语句

 

6.说明友元函数的关键字为()

A.inline B.virtual     C.friend  D.define

 

7.关于STL中之list顺序容器,下列叙述哪项为非?

A.拥有双向的链接串行

B.对insert有delete的操作较有效率

C.支持双向的迭代器(iterator)

D.自动排序内容

 

8.下面选项中,不是类的成员函数为()。

A.构造函数

B.析构函数

C.友元函数

D.拷贝构造函数

 

9.表达式:10!=9的值是()。

A.true

B.非零值

C.0

D.1

 

10.以下叙述中错误的是:

A.局部变量的定义可以在函数体内部

B.全局变量的含义可以在函数意外的任何位置

C.同一程序中,全局变量和局部变量不能同名

D.函数的形参属于局部变量

二、问答题

1.指出下面程序有哪些错误(3分)

unsigned char i;

char szSrc[1024]=”Hello…”;

char *pDes;

i=strlen(szSrc);

while(i-->=0)

{

*pDes=szSrc[i];

}

 

2.在Unix中用gcc怎样把test.c编译成目标文件test.o。(3分)

 

3.在Unix中用gcc怎样把test.c编译成可执行文件test。(3分)

 

4.如何引用一个已经定义过的全局变量。(3分)

 

5.请写出下列代码的输出内容。(3分)

#include<stdio.h>

Main()

{

int a,b,c,d;

a=10;

b=a++;

c=++a;

d=10*a++;

printf(“b,c,d:%d, %d, %d”, b,  c, d);

 

return 0;

}

 

6.进程和线程的差别。(5分)

 

三、问答题

1.不调用C++/C的字符串函数,请编写函数strcpy。(15分)

 

2.编写类String的构造函数、析构函数和赋值函数。(20分)

 

四、设计题

编写数据库连接池程序,可以用任意一种你熟悉的数据库为目标数据库来编写程序。要求支持多连接并发,数据库连接数能够动态增长。(15分)

 

答案

一、选择题

BACCC CDCDC

 

二、

1.

1)unsigned char i;这个会造成数组越界;

2)pDes,没有申请内存;

2.gcc -c test.o test.c

3.gcc -o test test.c

4.extern

5.b, c, d:10,12,120

 

 转载请注明原创链接:http://blog.csdn.net/wujunokay/article/details/15236555

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: