网易雷火工作室服务端开发暑期实习一面

5.8一面,当天晚上收到5.11二面通知

但是我感觉我回答的相当差,一大半都不会,会的题估计都没答对几个,完全不相信自己能过这种感觉

我Java和C++各投了一半吧差不多,本来打算一起准备,然后发现实验室活太多准备不过来了,就先准备Java了

所以我是只背了一些Java八股,C++还没开始背,所以没寄希望能过一面

以下是一面面经:

1. 自我介绍

2. 请问C++,初始化一个对象有哪些方式

不太会,只是浅浅学过

----那我给你看一段代码吧

代码段落里好像有B b; B m(b); B n = b; B c = move(b)????有点记不清了差不多这个意思

我完全看不懂,跟他老老实实说了实话

3. class B{

union{

int a;

byte b;

}

int c;

double d;

}

求cout << sizeof(b)

我不太会,问了下union的含义,简单给他讲了下int和double各占多少个字节,然后他说对齐的问题我没考虑到

4. 你知道.xxx文件吗,一连问了我四种文件格式,我全都没听说过,他说是Linux系统中常见的文件格式

5. 那你知道动态链接和静态链接的区别吗

我也不太会,但是闲扯了一点

他看我确实不太会C++,直接换成计网了:

6. 那就问你点计网的问题吧,你知道tcp吗,tcp粘包问题你听过吗

听过,TCP的算法默认会将多个tcp分组的包一起发送,导致接收方无法分辨不同消息之间的分界

7. 那tcp粘包问题如何解决呢?

发送定长的包?

----这种不够灵活,而且会产生碎片

那就结尾加上标识符?

----这种可能出现正文中的相同标识符干扰

那就包首定义长度?

----这个可以

8. tcp发包的时候,序列号如果溢出了怎么办,比如 0xFFFFF变成了0x000000,怎么说明后一个比前一个大?

加上版本号?比如版本2的0x00>版本1的0xFF?

----那如果版本号也溢出呢?

那就两个版本号交替?0和1交替?

----这个可以

9. 你知道TCP的time to alive吗

关闭连接后的存活时间?

如果服务端一直因为等待超时连接过载怎么办,无法释放连接?

这个我没太听懂

10. 来个经典的吧,www.google.com会发生什么(略)

11. 那网络就到这里,来点操作系统吧,你知道fork吗

创建子进程?

----那你知道子进程和父进程怎么通信吗,他们俩可以共享某些内存吗,这个机制你了解吗

不太了解

12. 如果4G的内存,一个进程可以给他分配8G的虚拟内存吗

这个我不太懂,Java是不需要手动分配内存的

然后问到这里,感觉面试官已经有点无语了,那我问你个代码题吧

class Time{

int timeStamp;

int year;

int month;

int day;

int dayInWeek; #周几

int hour;

int minute;

int second;

}

怎么求两个Time a和b是否在同一周内

一开始我也不会,但在面试官提示下,我用时间戳相减,如果在一周以内(7*24*60*60)并且大的时间dayInWeek大于小的时间,就是True

当晚收到了美团的一面挂的消息,和网易进二面的消息,百味杂陈

美团我认为自己一面答得还不错,结果直接挂了,网易我完全懵逼状态,感觉我是来搞笑的,结果居然过了,看起来面试这东西还真是玄学,可能你面试之前就决定要不要你了,后面就是走个流程吧,可能跟你发挥真的关系不大

#面经##网易面经##暑期实习##C++工程师##软件开发2024笔面经#
全部评论
同服务端开发,也是面得稀烂给过了。是大佬鸽的太多吗?还是技术面都面完再排序?
2 回复 分享
发布于 05-11 00:55 山东
不是,为啥我连面试机会都不给
点赞 回复 分享
发布于 05-20 21:08 湖南

相关推荐

评论
30
48
分享
牛客网
牛客企业服务