下载此文档

C 经典面试题.doc


文档分类:通信/电子 | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17 下载此文档
文档列表 文档介绍
本试题仅用于考查C++/C程序员的基本编程技能。内容限于C++/C常用语法,不涉及数据结构、算法以及深奥的语法。考试成绩能反映出考生的编程质量以及对C++/C的理解程度,但不能反映考生的智力和软件开发能力。 笔试时间90分钟。请考生认真答题,切勿轻视。一、请填写BOOL,float,指针变量与“零值”比较的if语句。(10分)提示:这里“零值”可以是0,,FALSE或者“空指针”。例如int变量n与“零值”比较的if语句为:if(n==0)if(n!=0)以此类推。请写出BOOLflag与“零值”比较的if语句:if(flag)if(!flag)请写出floatx与“零值”比较的if语句:constfloatTEMP=;if(x>-TEMP&&x<TEMP)if(!(x>-TEMP&&x<TEMP))请写出char*p与“零值”比较的if语句:if(NULL==p)if(NULL!=p)二、以下为WindowsNT下的32位C++程序,请计算sizeof的值(10分) charstr[]=“Hello”; char*p=str;intn=10;请计算sizeof(str)=6sizeof(p)=4sizeof(n)=4sizeof(int)=4sizeof(unsigned)=4sizeof(float)=4sizeof(double)=8voidFunc(charstr[100])//这是一个地址{请计算sizeof(str)=4}void*p=malloc(100);请计算sizeof(p)=4三、简答题(25分)1、头文件中的ifndef/define/endif干什么用?防止头文件被重复引用(宏保护作用)2、#include<>和#include“”有什么区别?#include<>,#include””,若没有找到再到系统目录中查询3、const有什么用途?(请至少说明两种)4、在C++程序中调用被C编译器编译后的函数,为什么要加extern“C”声明?C++支持函数重载,C不支持函数重载,加入extern“c”可以解决C++和C的名字匹配问题5、请简述以下两个for循环的优缺点//第一个for(i=0;i<N;i++){if(condition)DoSomething();elseDoOtherthing();}//第二个if(condition){for(i=0;i<N;i++)DoSomething();}else{for(i=0;i<N;i++)DoOtherthing();}优点:程序简洁明了,易读缺点:程序循环效率较低,逻辑判断的次数较多优点:程序执行效率高缺点:程序不简洁四、有关内存的思考题(20分)voidGetMemory(char*p)//p==str{p=(char*)malloc(100);//p改变指向}voidTest(void){char*str=NULL;GetMemory(str); strcpy(str,"helloworld");printf(str);}请问运行Test函数会有什么样的结果?答:str==NULL,向NULL地址写数据,严重错误!无结果输出char*GetMemory(void){ charp[]="helloworld";returnp;//返回栈内地址}voidTest(void){char*str=NULL;str=GetMemory(); printf(str);}请问运行Test函数会有什么样的结果?答:极有可能是乱码,输出结果不可知。返回了栈内的地址VoidGetMemory2(char**p,intnum){*p=(char*)malloc(num);}voidTest(void){char*str=NULL;GetMemory(&str,100);strcpy(str,"hello"); printf(str); }请问运行Test函数会有什么样的结果?答:没有释放内存空间,可以正确输出结果。MemoryleakvoidTest(void){char*str=(char*)malloc(100); strcpy(str,“hello”); free(str); if(str!=NULL) { strcpy(str,“world”); printf(str);}}请问运行Test函数会有什么样的结果?答:虽然可能可以正确输出结果,但是str是野指针,非常危险五、编写strcpy函数(10分)已知strcpy函数的原型是 char*strcpy(char

C 经典面试题 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人drp539605
  • 文件大小139 KB
  • 时间2019-07-31