当前位置:首页 » 基础信息 » c面试会问哪些基础的问题
扩展阅读
儿童红眼病用什么药 2024-11-30 02:20:48
剪动漫怎么把字抠了 2024-11-30 02:14:05

c面试会问哪些基础的问题

发布时间: 2024-01-15 01:38:18

⑴ IT面试经验:C/C程序员需要掌握哪些知识

概括来说,开发中常用到的功能:串口通信、网口通信、数据库访问、数据加解密处理等等。这些方面的知识都要掌握的,细说的话主要有以下几个方面:

一、语言相关

1、基础(Basic)

(1)变量与基本类型:语言内置类型、常量、变量的初始化、变量的作用域、变量的限定符、变量引用、枚举; (2)typedef 和define;

(3)数值与指针:数组定义与初始化、多维数值、指针操作;

(4)表达式:算术/逻辑计算、位运算、优先级、类型转换;

(5)语句:简单语句、声明/定义语句、复合语句、条件/循环控制语句、异常处理语句;

(6)函数:函数声明、参数传递、堆栈概念、函数重载;

(7)标准IO:条件状态、缓冲区、文件流、字符流、本地化;

(8)类和数据抽象:类的定义与声明、类的构造函数、静态成员、拷贝构造函数、操作符重载、类型转换;

(9)面向对象编程:数据(封装)抽象、继承、多态(动态绑毕帆定);

2、进阶(Advance)

(1)模板与泛型编程:模板定义、实例化、类模板成员、重载、特化; (2)智能指针:auto_ptr、shared_ptr、scoped_ptr;

(3)STL容器:顺序容器(vector、list、deque、queue、priority_queue、string)和关联容器(map、set、multimap、multiset); (4)STL算法:迭代器、算法; (5)常用复杂数据结构:hash_map、boost.any、boost. array、boost. regex、boost. variant、boost. multi_array、慧铅boost. pointer_container;

3、高级(Expert)

(1)高级泛型编程:表达式模板、模板元编程、Concept编程;

(2)程序架构,内存池,线程池;前数好

(3)高级抽象:boost.mpl、boost.lambda、boost.fusion、boost.proto;

(4)范式应用:boost.spirit;

(5)应用程序库:boost.asio 、boost.graph、blitz、Loki、CGAL、uBLAS;

二、系统相关

1、基础(Basic)

(1)Windows API之基础服务:文件系统、注册表、内存管理、DLL、多媒体;

(2)Windows API之内核对象:句柄、信号、线程、进程、互斥、事件、文件映射、命名管道、邮槽、计时器、完成端口;

(3)Windows API之图形设备接口:设备上下文、打印、字体、笔/刷、路径、区域、位图;

(4)Windows API之图形用户界面:窗口、标题、菜单、状态栏、消息、图标、按钮、 编辑框、组合框、列表框、滚动条、通用对话框;

(5)环境配置及Shell编程:环境变量、右键菜单、属性、关联; (6)Socket编程; (7)Web相关API; 2、进阶(Advance)

(1)MFC/ATL:文档视图结构、对话框、通用控件、OleDB、WinInet; (2)COM、自动化、ActiveX:Office开发、IE插件、VBA; (3)高级图形系统:OpenGL、DirectX; (4)二次开发:ObjectArx;

三、计算相关

1、计算机图形学

(1)向量:点积、叉积、求模、单位化、复合运算;(basic)

(2)矩阵:算术运算、平移/旋转/缩放/错切等变换、求逆、特征值;(basic) (3)四元组合欧拉角:与其他表示转换;(advance) (4)参数曲线/曲面:贝塞尔、(非)均匀有理样条;(advance) (5)三维几何体的构造与描述;(expert) 2、计算几何

(1)几何查找与判断:点与线、线与线、点与多边形;(basic) (2)多边形:简单多边形、凸多边形、多边形三角剖分;(advance) (3)凸壳及其应用;(advance) (4)Voronoi图/三角剖分及其应用;(advance) (5)多边形的交与并;(expert) (6)平面图;(expert) 3、数值计算

(1)数值计算的三大任务:求值、解方程(组)、函数逼近;(basic) (2)数值计算的误差、适定性、稳定性;(basic)

(3)解线性方程组直接方法:Gauss消元法、三角分解法;(basic)

(4)解线性方程组一般迭代方法:基本迭代、Jacobi迭代、G-S迭代、SOR/SSOR迭代;(advance)

(5)解线性方程组的变分迭代法:共轭梯度、预处理共轭梯度法;(expert) (6)解非线性方程组迭代方法:Newton迭代法、Newton-Raphson迭代法、同伦算法;(expert)

(7)求解矩阵特征值:乘幂法与反乘幂法、Rayleigh商迭代法、QR法、Krylov子空间法;(expert)

(8)插值:多项式插值、样条插值;(advance) (9)数值积分:Simpson公式、Gauss积分;(basic) (10)解常微分方程:欧拉法、Runge-Kutta法;(advance) (11)解椭圆方程:有限单元法、有限差分法、边界元法;(expert)

⑵ C语言最后一轮面试 技术类都问些什么问题

1、是应届生还是已经有工作经验了。如果是应届生,一般不会问很多关于专业方面的东西(最多会问一些简单的原理性的东西),然后会考察反应能力跟学习能力,英语的听说读写(搞技术的英语很重要,用的软件,看的资料基本都是英文)。还会问一些个人家庭情况和未来的打算(就是想知道你会不会干几个月就离职了)一般应届生谈薪资的不多,因为公司一般都是有标准的。
2、如果是有工作经验,会问以前做过什么项目,会问一些非常专业的问题(比如提出一个计划怎么实现,达到什么效果)。具体的面试环节看各个公司的规模,有的很简单,有的很复杂。