代码分析题

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 95 收藏 0 点赞 0 评论 0

百问百答 > 2.代码分析题 >
代码1
#include
using namespace std;
class Text
{
public:
Text()
{
cout<<"constructor of TEXT"< 2.代码分析题 >
代码2
#include
using namespace std;
int main()
{
int a=1;
int b=10;
int *p=&a
int *&pa=p;

(*pa)++;
cout<<"a="< 2.代码分析题 >
代码4
#include
using namespace std;
class Base
{
private:
int a;
public:
Base(int x):a(x){}
void print()
{
cout<<"base"< 2.代码分析题 >
代码5
#include
using namespace std;
class A{};
class B{};
class C:public A,public B
{
};
class D:virtual public A
{
};
class E:virtual public A,virtual public B
{
};
class F
{
public:
int a;
static int b;
};
int F::b=10;
int main()
{
cout<<"sizeof(A):"< 2.代码分析题 >
代码6
#include
#define SQR(x)(x*x)
int main()
{
int a,b=3;
a=SQR(b+2);
printf(“a=%d”,a);
return 0;
}
答案【11】

百问百答 > 2.代码分析题 >
代码7
int func(x)
{
int count x = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
return countx;
}
假定x = 9999 countx=?
答案:【8】

百问百答 > 2.代码分析题 >
代码8
typedef union {long i; int k[5]; char c;} DATE;
struct data { int cat; DATE cow; double dog;} too;
DATE max;
则语句 printf(“%d”,sizeof(struct date)+sizeof(max));的执行结果是:___
答案:【52】

百问百答 > 2.代码分析题 >
代码9
#include
using namespace std;
class A
{
public:
A(){doSth();}
virtual void doSth(){cout<<"I am A"< 2.代码分析题 >
代码10
分析以下代码 ,指出错误
#include
using namespace std;

int main()
{
int a=1;
int b=2;
int &c
int &b=a;
&d=b;
int* p;
*p =5;
return 0;
}

答案:
错误①: int &c;
声明一个引用类型的变量C,但是没有初始化。引用类型的变量在声明时同时必须初始化;
②: &d=b;引用只能在声明的时候被赋值,以后都不能在把该引用作为其他变量的别名
③:*p=5;p没有被初始化,p是个野指针,对野指针赋值非常危险,会导致程序运行时崩溃;

评论列表
文章目录