嵌入式面试题
9道嵌入式笔试题 精选面试题 来源 : 未知     2016-10-24

1、开发C代码时,经常见到如下类型的结构体定义:

typedef struct list_t{

struct list_t *next;

struct list_t *prev;

char data[0];

}list_t;

请问在32位系统中,sizeof(list_t)的值为?:

A.4byte

B.8byte

C.5byte

D.9byte

2、假设下面的函数foo会被多线程调用,那么让i、j、k三个变量哪些因为线程间共享访问需要加锁保护.()

int i = 0;

void foo()

{

static int j = 0;

int k = 0;

i++; j++; k++;

}

A.i和j

B.i,j,k都需要

C.i

D.j和k

3、4个圆盘的Hanoi塔,总的移动次数为()

A.7

B.8

C.15

D.16

4、当一个二叉排序树左右子树都不为空时,二叉排序树中的大值在二叉排序树的何处?

A.根节点

B.叶子节点

C.父节点

D.兄弟节点

5、程序出错在什么阶段?( )

#include

using namespace std;

int main(int argc, char * * argv) {

cout << "welcome to sogou" << endl;

return 0;

}

A.编译阶段出错

B.运行阶段出错

C.编译和运行都出错

D.程序运行正常

6、在java中重写方法应遵循规则的包括()

A.访问修饰符的限制一定要大于被重写方法的访问修饰符

B.可以有不同的访问修饰符

C.参数列表必须完全与被重写的方法相同

D.必须具有不同的参数列表

7、两个无环点链表L1,L2,其长度分别为m和n(m>n),判定L1,L2是否相交的时间复杂度是 1 ,空间复杂度是(不包括原始链表L1,L2) 2 。

8、C++中成员函数能够同时用static和const进行修饰?

9、#include

void main()

{ int c;

while ((c=getchar())!= ′\ n ′ )

switch(c - ′ 2 ′ )

{ case 0:

case 1:putchar(c+4);break;

case 2:putchar(c+4);break;

case 3:putchar(c+3);break;

default:putchar(c+2);break;

}

printf( ″\ n ″ );

}

运行时输入: 2473 ,输出结果:

参考答案:

1~5:BACBD 6:BC

7:1. o(m+n);2. o(1)

8:否,因为static表⽰示该函数为静态成员函数,为类所有;而const是用于修饰成员函数的,两者相矛盾

9:6897 VC++6.0测试过

扫码申领本地嵌入式教学实录全套视频及配套源码

上一篇:数据结构小测(含答案)

下一篇:嵌入式经典面试题(含答案)

400-611-6270

Copyright © 2004-2024 华清远见教育科技集团 版权所有
京ICP备16055225号-5京公海网安备11010802025203号