一 笔试
1.转义字符
2.6个9通过运算符得到100
9*9+9+9+9/9=100
(9+9/9)*(9+9/9)=100
(999-99)÷9=100
99/9*9+9/9=100
99+9-9+9/9=100
99+99/99=100
3.树的先序遍历和二叉树的遍历
4.一个数,该数二进制表示的时候:1的个数
5.虚函数和非虚函数 在子类父类调用的时候有哪些区别
6.给代码写上注释
7.输出一个字符串里面的包含相同字符的串
8.字符串操作,输出特定长度的一个连续字串
9.sql语句的书写,两张表输出满足条件的记录
10.数据库的一致性
二 面试
1.对面向对象的理解
2.对多态的理解
3.对虚函数的理解
4.虚表里面放的是什么?
5..net的exe文件和c的exe文件有什么区别以及C++生成的exe文件?
6.java如何生成exe文件
7.如何计算一个表达式的值,用到哪些数据结构。有没有封装好的方法!
8.STL
9.你觉得你比本科生的优势在哪里?
10.C++和java有哪些区别?
11.然后每一个项目都问了下实现的技术!自己都做了哪些工作!
三 笔试面试
1、数据库的模式:模式(概念模式),内模式,外模式(用户模式);
2、linux:查找命令:find,合并文件命令:cat;查看文件:more,less;
3、虚拟内存什么时候使用,虚拟内存与物理内存的转化;
4
public static void main(String[] args) { System.err.println(get()); } public static int get(){ try { throw new Exception(); } catch (Exception e) { return 2; }finally{ return 3; } }
输出什么:3
5、hash的查找时间复杂度,什么地方用到hash,hash解决冲突的方式有哪些?
6、ping用到了什么网络协议,ping的网络延迟是怎么计算的?ICMP
7、strcpy函数为什么要有char *的返回值?返回void为什么不可以?
8、字符串拷贝函数有哪些?strcpy和memcpy的区别是什么?
9、数据结构中的树有哪些?重点要强调:红黑树,Trie,B和B+。
10、Tcp的滑动窗口是什么,有什么作用?
11、TimeWait状态是什么?
12、TCP三次握手四次挥手。
13、linux的访问权限的计算方式:r=6,w=2,x=1.为什么要这样定义?
14、组播地址有哪些:224.0.0.0---239.255.255.255
15、私有IP地址:10.0.0.0---10.255.255.255/8 172.16.0.0---172.31.255.255/12 192.168.0.0---192.168.255.255/16
16、HTTP为什么是一种无状态的协议?
17、5条线最多把一个平面分为几部分?
18、4个平面能把三位空间分为几部分?
19、f(f1(),f2()),如果要f1()先执行,f2()后执行,这样的声明有问题不?
20、什么时候用到栈?
局部变量,参数,变量名。。。
21、f(int x,int y)被调用的时候,入栈的都有什么?
22、free()函数的作用?
仅仅是释放了空间,但是指向空间的指针还是存在的
如下面的代码
void do() { char *p=(char *)malloc(100); free(p); if(p) { printf("fuck"); } }
这个fuck是可以打印出来的,这个时候p是个野指针,我们需要做的工作是:p=NULL
23、 怎么减少malloc / new 申请空间导致的内存碎片问题?