深信服(已挂)C/C++

9月24日  14:00
一面凉经(50min):
1、自我介绍,明确要求介绍项目,于是临时发挥了一下。
2、C语言的IO有了解吗?我回答了像 鼠标键盘之类的IO,套接字、打开文件等IO。面试官说他指的就是打开文件,问我了解有哪些打开文件的函数,我只知道一个open
问我open的传入参数有哪些?我说了文件名、长度(瞎猜的)
要求我写一个函数,打开一个文件,写入hello,然后在寻找到o的位置,再关闭。(不会~)
3、内存结构?(堆、栈、数据区、程序区。
问栈里主要的存放数据是什么?我回答比如主函数中的int类型、char类型数据,这类普通变量,或者遇到子函数,创建新的栈帧,压栈之类的。
问内存的分配主要有什么函数,我说malloc分配,分配在堆中,通常搭配free;还有alloc分配,分配在栈中。
那请问关键字new 和malloc的区别,一个关键字,一个函数,并且函数需要指定大小;此外new分配的内存是可以在静态存储区,malloc只能在堆中。
那请问new出来的对象可以怎么样清除呢?我说如果知道指针位置,可以直接将该位置的数据清除(瞎说的),后面还补一句,我用JAVA比较多,堆中的对象清除一般就是垃圾回收吧。(哈哈哈)
4、创建进程需要分配的资源(PCB块、内存等)
怎么在linux中创建进程,我表示fork、还有后台运行nohup ………………&之类的。
linux中怎么查看进程的系统调用?我以为是说如何查看进程,我表示用ps或者top看,面试官就无奈说了一句查看进程的“系统调用”,我表示不知道。
5、问我哈希表的原理,讲了查看的时间复杂度是O(1),Key的计算公式,高16位与低16位,再与上桶长度-1,想唬一下他。(哈哈哈)
这时,他说C++中还有啥常用数据结构,我直接说数组、链表、树、红黑树、B+树(哈哈哈哈,后面补了一句,常用的就是数组、链表、树之类的)。
面试官挑了一个树问我,问题没听清,我就解释树的结构,以二叉树为例,每个节点最多只有两个子节点,通常一个节点里包含本节点数据、左节点指针、右节点指针。
这时候突然问,C++中存汉字能够用什么数据结构?我确实不太会,就说数组、链表。
6、C++的虚函数的多态,(和JAVA多态差不多,即使没用过C++我也能说个大概唬一下哈哈哈哈)。
7、套接字通信相关,问我unix的socket和linux的socket的区别,我一开始听成了udp的socket和tcp的socket区别……
蒙了,没学过unix和linux的区别,但还是需要讲自己会的。
于是我逮着linux的socket讲,讲了创建socket创建、bind、listen、accept、recv、sent等。最后补上一句,两者区别我不太了解。也算正面回应他的问题(哈哈哈哈哈)
8、这时候问我具体实习项目,实习中遇到的困难了,我就讲了一下网关的这个项目。
根据我的实习内容问我:
网关的寻址,我说了一个默认网关IP,他提示说路由表,我就讲了路由表的作用、IP寻址流程、以及arp协议。
然后问我策略路由(听说过,但不清楚概念,直接表示不会)
9、问了一个C语言的概念,位域,我忘记是啥了,直接表示不记得。后面百度了一下,就是节约空间的一种做法,用冒号搞定。

10、做题,给个字符串IP,判断是否合法。
我说可以用JAVA吗,他说只能C和C++,好吧,我投降,用C写。
过程中还说,本来不可以给你看具体条件要求,我现在复制过来给你看看。(什么条件要求呢?就是1、首位不能为0,;2、每段IP不能超过255……)
我心里在想,这玩意你就算不给我也知道吧……。
题目不出所料没做出来,C语言太不熟练了。
讲了一下思路,一个left一个right指针,找到“.”号的时候,就算left和right之间的值,然而我不知道C语言中有什么函数可以转化string和int。
于是手写一下,循环取出当前char,减去48得到int类型,通过right-left知道具***数,比如百位、十位等,然后循环相加就可以了得到具体值。
最后我傲娇地表示,要是这道题给我用JAVA,直接一个split,然后判断charAt(0)是否为0,接着判断长度是否大于3,最后转化为int判断。

反问:
我没啥问题,就直接说,部门里还是用C和C++多,我可能还是需要增加我的知识储备。面试官说部门不用JAVA,说这是一个双向选择的过程。(哈哈哈,基本上没了)

总结:面试在14:00,我刚从迈瑞线下面试回来,坐车坐得身心俱疲,本来就是随意广投的深信服,面试的时候变得一身轻松,因为知道自己大概率挂,反而面得出奇平静。
这就是心理作用吧,越紧张反而越容易出错,淡定地面对反而让我发现自己某些概念的不熟悉,也算增加了我的知识面,原本以为20-30分钟我就顶不住了,结果面了50min。

9.30  感谢信。  #深信服##C/C++##面经#
全部评论
同学同花顺尝试一下吗,面试简单不造火箭,可保姆式全程跟进度,我帖子有内推
5 回复 分享
发布于 2022-09-24 18:49 浙江
校友最后决定去哪儿了吗
1 回复 分享
发布于 2022-10-09 15:51 黑龙江
挂了之后官网显示的流程会变吗
1 回复 分享
发布于 2022-10-08 17:30 陕西
试试我司吗?
1 回复 分享
发布于 2022-10-05 20:18 北京
咋知道挂的,我就收到一个问卷,也是今天一面
1 回复 分享
发布于 2022-09-24 23:01 湖南
unix套接字是指本地套接字吧?
点赞 回复 分享
发布于 2022-10-12 22:57 上海
造火箭
点赞 回复 分享
发布于 2022-10-11 12:04 江苏
m
点赞 回复 分享
发布于 2022-10-09 18:06 广东
楼主牛逼,一点不慌😂
点赞 回复 分享
发布于 2022-10-07 08:38 辽宁
五十分钟,大公司真吓人😢
点赞 回复 分享
发布于 2022-09-29 11:36 浙江

相关推荐

05-29 22:11
门头沟学院 Java
Elastic90:抛开学历造假不谈,这公司的招聘需求也挺怪的,Java开发还要求你有图文识别、移动端开发和c++的经验,有点逆天了。
点赞 评论 收藏
分享
吴offer选手:学到了,下次面试也放张纸在电脑上,不然老是忘记要说哪几个点
点赞 评论 收藏
分享
评论
25
76
分享

创作者周榜

更多
牛客网
牛客企业服务