总结---4

 

全局变量与全局静态变量的区别

(a)若程序由一个源文件构成时,全局变量与全局静态变量没有区别。

 (b)若程序由多个源文件构成时,全局变量与全局静态变量不同:全局静态变量使得该变量成为定义该变量的源文件所独享,即:全局静态变量对组成该程序的其它源文件是无效的。

静态全局变量的作用:

(a)不必担心其它源文件使用相同变量名,彼此相互独立。

(b)在某源文件中定义的静态全局变量不能被其他源文件使用或修改。 

 

有语句char str[] = "abcde";请问表达式sizeof(str)的值是()    后面还有\0
A、1              B、4               C、5                D、6

 

有函数int func(int i)的实现为()

 

int func(int i)
{
    if(i > 1)
        return i*func(i-1);
    else
        return 1;
}

 

 

请问函数调用f(5)的返回值是多少()阶乘计算
A、5              B、15              C、20               D、120

 

请问以下说法,哪个是正确的()
A、每个类都有一个无参数的构造函数
B、每个类都有一个拷贝构造函数
C、每个类能有多个构造函数
D、每个类能有多个析构

 

看以下代码:
A *pa = new A[10];
delete pa;
则类A的构造函数和析构函数分别执行了几次()
A、1   1          B、10   10          C、1   10                D、10   1

 

看以下代码:

class A
{
public:
    ~A();
};
A::~A()
{
    printf("delete A ");
}

class B : public A
{
public:
    ~B();
};
B::~B()
{
    printf("delete B ");
}

请问执行以下代码
A *pa = new B();
delete pa;
输出的串是()A
A、delete A       B、delete B        C、delete B delete A          D、delete A delete B

 

文件长度是一个大于0的整数,用变量unsigned file_length; 来表示,把文件分成块,每块的长度也是一个大于0的整数,用变量unsigned block_length; 来表示,则文件被分成的块数为()
A、file_length/block_length                                            B、file_length/block_length+1         
C、(file_length+block_length-1)/block_length                D、((file_length-1)/block_length+1

 

函数的局部变量所需存储空间,是在哪里分配的()
A、进程的数据段      B、进程的栈上    C、进程的堆上       D、以上都可以

 

一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。

posted on 2013-10-21 21:45  猿人谷  阅读(641)  评论(0编辑  收藏  举报