首页 > 资料专栏 > HRM > 人力资源 > 面试甄选 > 互联网技术岗之C++基础面试题DOC

互联网技术岗之C++基础面试题DOC

yiguanl***
V 实名认证
内容提供者
资料大小:59KB(压缩后)
文档格式:DOC
资料语言:中文版/英文版/日文版
解压密码:m448
更新时间:2022/6/19(发布于广东)

类型:积分资料
积分:10分 (VIP无积分限制)
推荐:升级会员

   点此下载 ==>> 点击下载文档


文本描述
const符号常量: (1)、const char *p (2)、char const *p (3)、char * const p 如果const位于星号的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量。 如果const位于星号的右侧,const就是修饰指针本身,即指针本身是常量。 析构函数和虚函数的用法和作用? 析构函数的作用是当对象生命期结束时释放对象所占用的资源。析构函数用法:析构函数是特殊的类成员函数它的名字和类名相同,没有返回值,没有参数不能随意调用也没有重载。只是在类对象生命期结束时有系统自动调用。虚函数用在继承中,当在派生类中需要重新定义基类的函数时需要在基类中将该函数声明为虚函数,作用为使程序支持动态联遍。 堆和栈的区别 栈(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。堆:一般由程序员分配释放,若不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式类似。 头文件的作用是什么? 通过头文件来调用库功能。在很多场合,源代码不便(或不准)向用户公布,只要向用户提供头文件和二进制的库即可。用户只需要按照头文件中的接口声明来调用库功能,而不必关心接口怎么实现的。编译器会从库中提取出相应的代码。头文件能加强类型安全检查。如果某个接口被实现或被使用时,其方式与头文件中的声明不一致,编译器就会指出错误,这一简单的规则能大大减轻程序员调试、改错的负担。内存的分配方式有几种? 从静态存储区域分配。内存在程序编译的时候已经分配好,这块内存在程序的整个运行期间都存在。如全局变量。 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率高,但是分配的内存容量有限。 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活。BOOL、float、指针变量与”零值比较的if语句”。 BOOL:If(flag)或if(!flag) Float:const float EPSINON = 0.00001; If((x>=.EPSINON)&&(x<=EPSINON)) 说明:不可将浮点变量用”==”或”!=”与数字比较,应该设法转化成”>=”或”<=”此类形式。 指针*p:if(p==NULL) if(p!=NULL) 以下为Windows NT下的32位C++程序,请计算sizeof的值 Char str[] = “Hello”; Char *p = str; Int n = 10 请计算: Sizeo