2013年海康威视校园招聘笔试题

本文是一份编程笔试题集合,涵盖了从24点数学谜题到C++内存管理的多个方面,包括计算10、10、4、4的24点,32位机器下类的大小,结构体对齐,表达式的值计算,内存释放错误,函数参数传递的细节,以及C++中的构造函数和析构函数,内存分配与释放,派生类和基类指针调用成员函数等知识点。通过这些题目,可以考察程序员的基础编程能力与理解力。
摘要由CSDN通过智能技术生成
1、10、10、4、4四个数,怎么算出24点?
(10*10-4)/4=24
2、下列表达式在32位机器编译环境下的值()
class A
{
};

class B
{
public:
	B();
	virtual ~B();
};

class C
{
private:
#pragma pack(4)
	int i;
	short j;
	float k;
	char l[64];
	long m;
	char *p;
#pragma pack()
};

class D
{
private:
#pragma pack(1)
	int i;
	short j;
	float k;
	char l[64];
	long m;
	char *p;
#pragma pack()
};

int main(void)
{
	printf("%d\n",sizeof(A));
	printf("%d\n",sizeof(B));
	printf("%d\n",sizeof(C));
	printf("%d\n",sizeof(D));
	return 0;
}
A、1、4、84、82      B、4、4、82、84      C、4、4、84、82      D、1、4、82、82
3、以下程序在32位机器下运行的结果是()
#pragma pack(4)
struct info_t
{
	unsigned char version;
	unsigned char padding;
	unsigned char extension;
	unsigned char count;
	unsigned char marker;
	unsigned char payload;
	unsigned short sequence;
	unsigned int timestamp;
	unsigned int ssrc;
};

union info_u
{
	unsigned char version;
	unsigned char padding;
	unsigned char extension;
	unsigned char count;
	unsigned char marker;
	unsigned char payload;
	unsigned short sequence;
	unsigned int timestamp;
	unsigned int ssrc;
};
#pragma pack()

int main(void)
{
	printf("%d\n",sizeof(info_t));
	printf("%d\n",sizeof(info_u));
	return 0;
}
A、12  12      B、12  4       C、16  4   D、16  12  
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值