2013奇虎360系统平台开发工程师南京面试题

转自http://blog.chinaunix.net/uid-26750075-id-3226263.html

1.解释指针以及 const的组合,如:

  1. int * i; //i为指针,指向int类型
  2. int * const i;//int const *p和int *const的区别   前者指向的内容不可改变.后者指针不能再指向其它的东西了.
  3. const int * i;//i是指向常量的指针,指针指向一个常量,无需初始化,指针本身可以改变,但是指针指向的值不能改变。
  4. const int * const i;//i为指针指向常量,i指针也不能指向别的
  5. int const * const i;//同4
2.static的几种用法?
     静态和隐藏
3.定义宏求两个数的最小值
   #define MIN(x,y) ((x>y)?y:x)
4.画出函数调用栈
  1. long foo(int i, int j)
  2. {
  3.    int a = 1;
  4.    int b = 2;
  5.    return i + j + a + b;     
  6. }
  7. int main(int argc, char ** argv)
  8. {
  9.     int i = 20;
  10.     long l = foo(i, 30);
  11.     exit(0);
  12. }
5.进程与线程的关系区别 
   调度/并发/拥有资源/开销/
6.Linux内存管理方式

7.TCP/IP协议分层;TCP、IP协议工作在那一层;解释TCP/UDP异同;TCP怎么保证可靠链接以及重传机制,怎么验证数据包丢失或错误
   传输层 TCP
   网络层  IP    
    TCP/UDP异同:面向连接/面向无连接;打电话/发短息
    TCP:可靠的、基于字节流的通信协议、传输大量数据;确保传输数据的正确性、不出现丢失和乱序;对资源要求多
    UDP:不连接、不对数据进行检查与修改,会出现分组丢失、重复、乱序;对资源要求较少;实时性好,效率比TCP高;段结构比TCP的段结构简单,所以开销也小

8.进程间通信有哪些方法
  共享存储、消息、管道。
9.写出函数void *memcpy(void *dst, void * src, size_t len)
10.写处快速排序算法
11.有两个单链表A和B,已知单链表A和B会在某一个节点时汇合,即A和B中有一个节点next指针指向相同的地址,且往后节点完全相同;写一个算法,求出汇合点的指针,要求算法时间复杂度为O(n)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值