前些天面的字节提前批,发现自己许多的基础知识不足够,很多东西是学过,但是记得不多给忘了,在此记载。
我面的是JAVA,不过问了不少C/C++的问题(虽然也学过这两个语言,不过涉猎不深),毕竟字节本来就是很多都用C方面的,不过还是挺不快乐的,准备好的关于JAVA方面的内容基本上没问。
总结一下三个方向:
1.C/C++的区别
1.struct和类的区别,意义在哪里。(没答上来)
2.sturct里面几个定义float,int,double等数据类型,会占据几个字节。(这个答上来了,考的是结构体字节对齐,比如先int a,再short b 和先short b 再int a 占据的字节数是不一样的)
3.这里是问了一些堆栈的问题,然后借此面试官和我稍微讲解了struct和类的区别(PS:面试官真的人很好)
2.计算机网络的问题
1.http和https区别在哪里(没答上来,只说了下https比http安全,为什么安全不太了解,后来也是面试官和我讲解了一波)
2.get和post的区别(没答好)
3.操作系统原理
1.进程线程区别和联系
2.有哪些调度算法,分别是怎么样的。
3.现代CPU一秒钟能跑多少MOVE指令
4.怎么优化速度(流水线)
5.影响CPU速度的因素
6.巴拉巴拉,基本上当初学的操作系统原理这本书内容都问到了一些。
4.敲代码
1.select语句
2.建表语句 create,设置某字段唯一以及索引(没弄出来,很久没有自己敲create语句了,基本上都是用工具解决的)
3.把字符串全变小写(或者大写)