网易雷火 游戏研发工程师 一面
岗位:游戏研发工程师(服务端方向)
时间:8.29
题目
做题讲题
1、以下两个函数 int a = 0, b = 0, x = 0, y = 0; void thread1() { a = 1; x = b; } void thread2() { b = 1; y = a; } thread1和thread2分别在2个线程中同时开始执行,当都执行完毕后,a、b、x、y的值为__
以为是四种情况,然后又说1100不可能,结果面试官说有可能,问我知不知道指令重排
2、某数据库表 CREATE TABLE tbl ( uid int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '角色id', name varchar(32) NOT NULL DEFAULT '' COMMENT '角色名', PRIMARY KEY (uid) ); 角色id不会重复,但是角色名可能重复 写出求tbl中的所有不同的name及其出现次数的sql语句
问执行思路,主键索引,索引作用,int(10)和int区别
3、以下C代码的运行结果是:
#include <stdio.h> #define F(x) (x << 2)
int main(int argc, char* argv[]) { int number = 33; number = F(number += 10); printf("%d\n", number); return 0; }
把函数第二行写成替换后的,inline知不知道,有什么用,Java有没有
4、64位系统下,sizeof(node)=__。 struct node { virtual void func1(); virtual void func2(int); void func3(); char a; int b; };
Java类的格式,Java对象头内容,如果是子类还有什么
5、给定8枚相同的硬币,其中一枚比较重,用天平称量找出重的硬币。最少需要____次
以为是3次其实2次,跟二分有什么区别
6、关于内存的分配以下说法正确的是: A、在函数调用时,前一个变量的地址小于后一个变量的地址。 B、静态变量不在栈上分配。 C、栈内存分配速度较快,堆内存分配速度较慢。 D、不同进程的两个值相同的指针,指向了相同的内存。
malloc机制,虚拟内存转物理内存
7、一个序列为09615483,建立小根堆,那么该堆所对应的二叉树的中序遍历是____
建堆过程
反问环节:
问业务,说面试不是根据业务的
总结
很新颖的面试,先让你做题,然后讲思路,过程中会再延伸一些其他的知识点。可惜出的题主要是C++的,有一些语言特性的题目,如果不是之前有一定基础估计会很懵逼。不过面试官还是给我过了,可能觉得我基础知识掌握的还不错?
#24届软开秋招面试经验大赏#24后端开发面筋