您的位置:控制工程论坛网论坛 » 嵌入式系统 » 华为的面试试题

zhiy66

zhiy66   |   当前状态:在线

总积分:6528  2025年可用积分:0

注册时间: 2007-12-18

最后登录时间: 2012-01-11

空间 发短消息加为好友

华为的面试试题

zhiy66  发表于 2008/10/13 20:41:12      679 查看 0 回复  [上一主题]  [下一主题]

手机阅读

华为的面试试题比较专业,都是一些专业知识。

  Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?   

  Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢?  

  Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?  

  Q4:请问C++的类和C里面的struct有什么区别?   

  Q5:请讲一讲析构函数和虚函数的用法和作用?   

  Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?   

  Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。   

  Q8:8086是多少位的系统?在数据总线上是怎么实现的?

a4:c++中的类具有成员保护功能,并且具有继承,多态这类oo特点,而c里的struct没有

a5:析构函数一般在对象撤消前做收尾工作,比如回收内存等工作,虚拟函数的功能是使子类可以用同名的函数对父类函数进行重载,并且在调用时自动调用子类重载函数,如果是纯虚函数,则纯粹是为了在子类重载时有个统一的命名而已。(说得不是很确切,自己随便找本c++的书都有说明)

a6:全局变量的生命周期是整个程序运行的时间,而局部变量的生命周期则是局部函数或过程调用的时间段。其实现是由编译器在编译时采用不同内存分配方法。全局变量在main函数调用后,就开始分配,如果是静态变量则是在main函数前就已经初始化了。而局部变量则是在用户栈中动态分配的(还是建议看编译原理中的活动记录这一块)

a8:8086系统是16位系统,其数据总线是20位,实现过程,微机原理上有,我也差不多忘了,呵呵


  以下是华为2004年招收应届大学毕业生技术支持面试题。

  笔试内容包括:

  1。技术试题:系统windows/linux,网络基础,通信基础,数据库

  2。能力试题:根据两故事发表看法

  3。英语作文

  筛选后进入面试。
 
  共有四轮面试:

  问题一:两笔记本电脑连起来后拼不通,你觉得可能有哪些问题?

  问题二:我们在南京,和深圳的网络是通的,但和北京的网络不通,你以怎样的顺序检查问题?

  问题三:解释什么叫"透明"?什么叫"网格"?

  问题四:交换和路由的区别?VLAN的特点?

  问题五:画一个积分电路和一个微分电路。

  问题六:知道现在的路由器是第几代了吗?

  大家看看自己会做吗?多些经验,有备无患吧!

. 找错
Void test1()
{
char string[10];
char* str1="0123456789";
strcpy(string, str1);
}


Void test2()
{
char string[10], str1[10];
for(I=0; I<10;I++)
{
str1[i] =''''''''a''''
}
strcpy(string, str1);
}

Void test3(char* str1)
{
char string[10];
if(strlen(str1)<=10)
{
strcpy(string, str1);
}
}


2. 找错
#define MAX_SRM 256

DSN get_SRM_no()
{
static int SRM_no;
int I;
for(I=0;I{
SRM_no %= MAX_SRM;
if(MY_SRM.state==IDLE)
{
break;
}
}
if(I>=MAX_SRM)
return (NULL_SRM);
else
return SRM_no;
}


3. 写出程序运行结果

int sum(int a)
{
auto int c=0;
static int b=3;
c+=1;
b+=2;
return(a+b+C);
}

void main()
{
int I;
int a=2;
for(I=0;I<5;I++)
{
printf("%d,", sum(a));
}
}

4.

int func(int a)
{
int b;
switch(a)
{
case 1: 30;
case 2: 20;
case 3: 16;
default: 0
}
return b;
}
则func(1)=?

5:
int a[3];
a[0]=0; a[1]=1; a[2]=2;
int *p, *q;
p=a;
q=&a[2];
则a[q-p]=?

6.
定义 int **a[3][4], 则变量占有的内存空间为:_____

7.
编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒。如输入2004年12月31日23时59分59秒,则输出2005年1月1日0时0分0秒。
1楼 0 0 回复