2015校招网易C/C++工程师笔试题(附答案)

1. #include < filename.h >和#i nclude “filename.h” 有什么区别?   
答:对于#i nclude < filename.h >,编译器从标准库路径开始搜索filename.h  对于#i nclude “filename.h”,编译器从用户的工作路径开始搜索filename.h 
2. 在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?   
答:C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字与C 语言的不同。假设某个函数的原型为:void foo(int x, int y); 该函数被C 编译器编译后在库中的名字为_foo , 而C++ 编译器则会产生像_foo_int_int 之类的名字。  C++提供了C 连接交换指定符号extern“C”来解决名字匹配问题。 
 3. 一个类有基类、内部有一个其他类的成员对象,构造函数的执行顺序是怎样的?   
答:先执行基类的(如果基类当中有虚基类,要先执行虚基类的,其他基类则按照声明派生类时的顺序依次执行),再执行成员对象的,最后执行自己的。
 4. New delete 与malloc free 的区别   
答:用malloc 函数不能初始化对象,new 会调用对象的构造函数。Delete 会调用对象的destructor,而free 不会调用对象的destructor.   
5. Struct 和class 的区别   
答:struct 中成员变量和成员函数默认访问权限是public,class 是private 
 6.请问下面程序有什么错误?  
int a[60][250][1000],i,j,k;  
for(k=0;k<=1000;k++)  
for(j=0;j<250;j++)  
for(i=0;i<60;i++)  
a[i][j][k]=0;   
答:把循环语句内外换一下 
7. 请写出下列代码的输出内容 
2015校招网易C/C++工程师笔试题(附答案)

 8. 写出BOOL,int,float,指针类型的变量a 与零的比较语句。   
答: BOOL : if ( !a )
  int : if ( a == 0)
  float : const EXPRESSION EXP = 0.000001
  if ( a < EXP && a >-EXP)
  pointer : if ( a != NULL) 
9.已知strcpy 函数的原型是:   char *strcpy(char *strDest, const char *strSrc); 其中strDest 是目的字符串,strSrc 是源字符串。不调用C++/C 的字符串库函数,请编写函数 strcpy 答: 2015校招网易C/C++工程师笔试题(附答案) 
10.写一个函数找出一个整数数组中,第二大的数。 答: 2015校招网易C/C++工程师笔试题(附答案) 

个人资料
onemore
等级:8
文章:133篇
访问:11.8w
排名: 4
上一篇: 网易2013校招-测试:笔试题目(2终)
下一篇:2015网易校招笔试题-Java开发工程师
猜你感兴趣的圈子:
网易笔试面试圈
标签: filename、基类、nclude、编译器、exp、面试题
隐藏