搜狗2022C++工程师笔试题
搜狗2022C++工程师笔试题
1.【单选题】3分 | 假设整数0x12345678存放在内存地址0x0开始的连续四个字节中(即地址0x0到0x3).那么在以LittleEndian字节序存储的memory中,地址0x3的地方存放的字节是:
A 0x12
B 0x34
ts 数组字符串转数组C 0x56
D 0x78
2.【单选题】3分 | 以下代码输出的是__?intfoo(intx,inty){if(x=0||y=0)return1;return3*foo(x-1,y/2);}cout
A 81
B 27
C 9
D 3
3.【单选题】3分 | 给定下列程序,那么执行printf("%\n",foo(20,13));的输出结果是多少?intfoo(intx,inty){if(x<=0││y<=0)return1;return3*foo(x-6,y/2);}
A 3
B 9
C 27
D 81
4.【单选题】3分 | 如果x=2022,下面函数的返回值是()intfun(unsignedintx){intn=0;while((x+1)){n++;x=x|(x+1);}returnn;}
A 20
B 21
C 23
D 25
5.【单选题】3分 | 以下代码的输出是()inta[5]={1,2,3,4,5};int*ptr=(int*)(a+1);printf("%d,%d",*(a+1),*(ptr-1));
A 1,2
B 2,5
C 2,1
D 1,5
6.【单选题】3分 | 在linux下64位c程序,请计算输出的三个sizeof分别是()voidfunc(charst
r_arg[100]){cout
A 5,5,8
B 6,6,4
C 6,8,4
D 6,6,8
7.【单选题】3分 | 下面关于迭代器失效的描述哪个是错误的()
A vector的插入操作不会导致迭代器失效
B map的插入操作不会导致迭代器失效
C vector的删除操作只会导致指向被删除元素及后面的迭代器失效
D map的删除操作只会导致指向被删除元素的迭代器失效
8.【单选题】3分 | 函数fun的声明为intfun(int*p[4]),以下哪个变量可以作为fun的合法参数()
A inta[4][4];
B int**a;
C int**a[4]
D int(*a)[4];
9.【单选题】3分 | 下面说法正确的是()
A C++已有的任何运算符都可以重载
B const对象只能调用const类型成员函数
C 构造函数和析构函数都可以是虚函数
D 函数重载返回值类型必须相同
10.【单选题】3分 | 典型的创建Windows窗口过程的流程为()
A 注册窗口类-创建窗口-显示窗口-更新窗口-消息循环
B 注册窗口类-创建窗口-更新窗口-显示窗口-消息循环
C 创建窗口-注册窗口类-更新窗口-显示窗口-消息循环
D 创建窗口-注册窗口类-显示窗口-更新窗口-消息循环
11.【单选题】3分 | 下面哪个API返回的不属于windows内核对象()
A CreateFile
B CreateSemaphore
C CreateDC
D CeateEvent
12.【单选题】3分 | 用户双击鼠标时产生的消息序列,下面正确的是()
A WM_LBUTTONDOWN,WM_LBUTTONUP,WM_LBUTTONDOWN,WM_LBUTTONUP
B WM_LBUTTONDOWN,WM_LBUTTONUP,WM_LBUTTONUP,WM_LBUTTONDBLCLK
C WM_LBUTTONDOWN,WM_LBUTTONUP,WM_LBUTTONDOWN,WM_LBUTTONDBLCLK
D WM_LBUTTONDOWN,WM_LBUTTONUP,WM_LBUTTONDBLCLK,WM_LBUTTONUP
13.【单选题】3分 | 以下关于线程以下描述正确的是()1.windows线程创建时,默认绑定在1个特定的CPU上2.可采用SetThreadAffinityMask接口设置线程与某个cpu绑定3._beginthreadex比CreateThread创建线程安全是因为使用_beginthreadex会创建一个_tiddata,在调用一些诸如strtok函数时会将需要保护的数据存入_tiddata4.使用_beginthread创建线程时,线程执行函数必须为_cdecl约束规范,而_beginthreadex指定的线程执行函数必须为_stdcall

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。