c基础知识面试

1.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) 希望可以帮到您,谢谢。

2.C语言笔试题面试专用求题目

> 预处理器(Preprocessor)1。

用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1)。 #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2)。

懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。 3)。

意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。 4)。

如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。

2。 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。

#define MIN(A,B) ((A) 6) puts("> 6") : puts("6”。原因是当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。

因此-20变成了一个非常大的正整数,所以该表达式计算出的结果大于6。这一点对于应当频繁用到无符号数据类型的嵌入式系统来说是丰常重要的。

如果你答错了这个问题,你也就到了得不到这份工作的边缘。13。

评价下面的代码片断:unsigned int zero = 0;unsigned int compzero = 0xFFFF;/*1's complement of zero */对于一个int型不是16位的处理器为说,上面的代码是不正确的。 应编写如下:unsigned int compzero = ~0;这一问题真正能揭露出应试者是否懂得处理器字长的重要性。

在我的经验里,好的嵌入式程序员非常准确地明白硬件的细节和它的局限,然而PC机程序往往把硬件作为一个无法避免的烦恼。 到了这个阶段,应试者或者完全垂头丧气了或者信心满满志在必得。

如果显然应试者不是很好,那么这个测试就在这里结束了。但如果显然应试者做得不错,那么我就扔出下面的追加问题,这些问题是比较难的,我想仅仅非常优秀的应试者能做得不错。

提出这些问题,我希望更多看到应试者应付问题的方法,而不是答案。不管如何,你就当是这个娱乐吧…动态内存分配(Dynamic memory allocation)14。

尽管不像非嵌入式计算机那么常见,嵌入式系统还是有从堆(heap)中动态分配内存的过程的。 那么嵌入式系统中,动态分配内存可能发生的问题是什么?这里,我期望应试者能提到内存碎片,碎片收集的问题,变量的持行时间等等。

这个主题已经在ESP杂志中被广泛地讨论过了(主要是 P。J。

Plauger, 他的解释远远超过我这里能提到的任何解释),所有回过头看一下这些杂志吧!让应试者进入一种虚假的安全感觉后,我拿出这么一个小节目:下面的代码片段的输出是什么,为什么?char *ptr;if ((ptr = (char *)malloc(0)) == NULL)puts("Got a null pointer");elseputs("Got a valid pointer");这是一个有趣的问题。 最近在我的一个同事不经意把0值传给了函数malloc,得到了一个合法的指针之后,我才想到这个问题。

这就是上面的代码,该代码的输出是“Got a validpointer”。我用这个来开始讨论这样的一问题,看看被面试者是否想到库例程这样做是正确。

得到正确的答案固然重要,但解决问题的方法和你做决定的基本原理更重要些。Typedef15。

Typedef 在C语言中频繁用以声明一个已经存在的数据类型的同义字。也可以用预处理器做类似的事。

例如,思考一下下面的例子:#define dPS struct s *typedef struct s * tPS;以上两种情况的意图都是要定义dPS 和 tPS 作为一个指向结构s指针。 哪种方法更好呢?(如果有的话)为什么?这是一个非常微妙的问题,任何人答对这个问题(正当的原因)是应当被恭喜的。

答案是:typedef更好。思考下面的例子:dPS p1,p2;tPS p3,p4;第一个扩展为struct s * p1, p2;上面的代码定义p1为一个指向结构的指,p2为一个实际的结构,这也许不是你想要的。

第二个例子正确地定义了p3 和p4 两个指针。晦涩的语法16。

C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?int a = 5, b = 7, c;c = a b;这个问题将做为这个测验的一个愉快的结尾。 不管你相不相信,上面的例子是完全合乎语法的。

问题是编译器如何处理它?水平不高的编译作者实际上会争论这个问题,根据最处理原则,编译器应当能处理尽可能所有合法的用法。因此,上面的代码被处理成:c = a b;因此, 这段代码持行后a = 6, b = 7, c = 12。

如果你知道答案,或猜出正确答案,做得好。如果你不知道答案,我也不把这个当作问题。

我发现这个问题的最大好处是:这是一个关于代码编写风格,代码的可读性,代码的可修改性的好的话题。

c基础知识面试

转载请注明出处生活知识网 » c基础知识面试

资讯

保安保洁服务基础知识

阅读(33)

本文主要为您介绍保安保洁服务基础知识,内容包括给保安和保洁人员培训,该讲哪方面的知识?请给点关于这方面的文字,保安服务的都有些什么内容,企业工厂保安应该注意什么?,保安员服务培训的内容是什么?。保安门卫服务:(1)保安人员对客户单位出入

资讯

程序员面试基础知识

阅读(28)

本文主要为您介绍程序员面试基础知识,内容包括程序员需要掌握哪些面试技巧,Java程序员面试必备的要点是什么呢?,程序员面试要注意什么?。写好简历是拿高薪offer的敲门砖一个优秀程序员的思维是缜密细致的,而是否具备这个特质,首先由你的简历

资讯

2016金融市场基础知识电子书

阅读(27)

本文主要为您介绍2016金融市场基础知识电子书,内容包括2016金融市场基础知识教材,2016证券从业资格证教材什么版本好在哪买是正版2016证券从爱问知,2016证券从业资格考试新的考试制度下,《金融市场基础知识》和《证。您好! 现行考试测试制度

资讯

第三章空气与生命基础知识

阅读(26)

本文主要为您介绍第三章空气与生命基础知识,内容包括。第三单元 生物圈中的绿色植物 第一章 生物圈中有哪些绿色植物 蕨类植物出现根、茎、叶等器官的分化,而且还具有输导组织、机械组织,所以植

资讯

六级地理基础知识

阅读(31)

本文主要为您介绍六级地理基础知识,内容包括六年级地理知识,一些地理基本知识,地理的常识性问题。多彩的“世界” 大自然用绚丽多彩的色调创造了五光十色的奇观,有海、有湖、有沙漠,还有土壤。 五色海 红海 位于非洲与阿拉伯半岛之间,因沿

资讯

网络基础知识面试题答案

阅读(31)

本文主要为您介绍网络基础知识面试题答案,内容包括加入学生会网络部面试的问题及问题答案是什么?,面试题:请简述网络定义,并谈谈自己对网络的理解?要最好的!爱问,对网络管理工作的理解面试题:你对网络管理一职有多少了解?你打。对网络文化

资讯

医学基础知识招聘考试试题

阅读(32)

本文主要为您介绍医学基础知识招聘考试试题,内容包括医疗卫生招聘考试临床医学基础知识复习重点包括哪些?,2017广西医疗卫生系统招聘考试护理医学知识考什么,医学基础知识考试题。医学基础知识试题库单选题1.人的呼吸系统包括呼吸道和 (C)A.

资讯

土地资源管理基础知识

阅读(32)

本文主要为您介绍土地资源管理基础知识,内容包括土地资源管理学什么,土地管理基础知识要知道哪些?,土地管理基础与法规内容?。土地资源管理专业学习课程公共管理、环境科学技术、应用经济学、土地资源学、土地规划学、土地管理学、土地经济

资讯

家用燃气壁挂炉基础知识问答

阅读(32)

本文主要为您介绍家用燃气壁挂炉基础知识问答,内容包括家用燃气壁挂炉小知识,燃气壁挂炉日常使用注意问题是什么?,—燃气壁挂炉使用问题?。家用燃气壁挂炉的小常识,小松鼠总结了以下几点: 1.具备空气顺畅的阳台 壁挂炉的安装,一定要选择无人居

资讯

常州公共基础知识与能力素质

阅读(30)

本文主要为您介绍常州公共基础知识与能力素质,内容包括2015年江苏常州市公务员考试时间考试内容?,公共基础知识考什么?,我想考江苏镇江或常州的公务员(税务,工商)一共需要参。2015年江苏常州市公务员考试大纲:http://htwx.huatu.com/jiangsu

资讯

图解增值税基础知识

阅读(32)

本文主要为您介绍图解增值税基础知识,内容包括谁能通俗地讲一下什么是增值税?,会计基础增值税,增值税常识中什么是销售额和进项税额?。简单的说,增值税就是对“增值”部分的收入征收的税。 以你的例子: 纺纱厂--织布厂--服装厂 织布厂从纺纱

资讯

军队文职医学基础知识题

阅读(34)

本文主要为您介绍军队文职医学基础知识题,内容包括军队文职人员考试护理专业考不考医学基础知识,军队文职考试的医学综合里的药学类考试有什么参考书吗?,军队文职,公务员,事业单位考试准备起来容易吗。2018军队文职人员统一招聘 全军统一考

资讯

大学高数基础知识

阅读(40)

本文主要为您介绍大学高数基础知识,内容包括大学高数知识,大学高数基础要学哪些?,大一高数上册知识点大学高数该怎么学我是大一的刚上了一个礼拜的。主要学习如下课程:数学分析、高等代数、高等数学、解析几何、微分几何、高等几何、常微分

资讯

保安保洁服务基础知识

阅读(33)

本文主要为您介绍保安保洁服务基础知识,内容包括给保安和保洁人员培训,该讲哪方面的知识?请给点关于这方面的文字,保安服务的都有些什么内容,企业工厂保安应该注意什么?,保安员服务培训的内容是什么?。保安门卫服务:(1)保安人员对客户单位出入

资讯

程序员面试基础知识

阅读(28)

本文主要为您介绍程序员面试基础知识,内容包括程序员需要掌握哪些面试技巧,Java程序员面试必备的要点是什么呢?,程序员面试要注意什么?。写好简历是拿高薪offer的敲门砖一个优秀程序员的思维是缜密细致的,而是否具备这个特质,首先由你的简历

资讯

2016金融市场基础知识电子书

阅读(27)

本文主要为您介绍2016金融市场基础知识电子书,内容包括2016金融市场基础知识教材,2016证券从业资格证教材什么版本好在哪买是正版2016证券从爱问知,2016证券从业资格考试新的考试制度下,《金融市场基础知识》和《证。您好! 现行考试测试制度

资讯

第三章空气与生命基础知识

阅读(26)

本文主要为您介绍第三章空气与生命基础知识,内容包括。第三单元 生物圈中的绿色植物 第一章 生物圈中有哪些绿色植物 蕨类植物出现根、茎、叶等器官的分化,而且还具有输导组织、机械组织,所以植

资讯

六级地理基础知识

阅读(31)

本文主要为您介绍六级地理基础知识,内容包括六年级地理知识,一些地理基本知识,地理的常识性问题。多彩的“世界” 大自然用绚丽多彩的色调创造了五光十色的奇观,有海、有湖、有沙漠,还有土壤。 五色海 红海 位于非洲与阿拉伯半岛之间,因沿

资讯

网络基础知识面试题答案

阅读(31)

本文主要为您介绍网络基础知识面试题答案,内容包括加入学生会网络部面试的问题及问题答案是什么?,面试题:请简述网络定义,并谈谈自己对网络的理解?要最好的!爱问,对网络管理工作的理解面试题:你对网络管理一职有多少了解?你打。对网络文化

资讯

医学基础知识招聘考试试题

阅读(32)

本文主要为您介绍医学基础知识招聘考试试题,内容包括医疗卫生招聘考试临床医学基础知识复习重点包括哪些?,2017广西医疗卫生系统招聘考试护理医学知识考什么,医学基础知识考试题。医学基础知识试题库单选题1.人的呼吸系统包括呼吸道和 (C)A.

资讯

胃的详细基础知识

阅读(24)

本文主要为您介绍胃的详细基础知识,内容包括肠胃小常识,不得不知的胃腑常识?,胃的解剖生理是怎样的?。从生活作息上做起,最起码一天三顿要定时定量,最好给自己设定一个时间表,然后严格遵守。这同时会对睡眠时间产生影响,因为一些晚睡晚起的人是