记录今天的参加的深圳某著名互联网公司的部分笔试题
1.计算机大小端判断函数;
-
int data = 0x1234;
-
if(0x12 == (char*)&data)
-
{
-
printf("Big End\n");
-
}
-
else
-
{
-
printf("Little End\n");
-
}
2.执行下述语句后,str1和str2分别是什么?
-
char ptr1[100] = "sogo is greate works";
-
char ptr2[100] = "sohu is greate works";
-
-
char *str1 = ptr1;
-
char *str2 = ptr2;
-
memcpy(str1+4, str1, 6);
-
memmove(str2+4, str2, 6);
-
-
puts(str1);
-
puts(str2);
打印的结果是:
-
sogosogosoeate works
-
sohusohu ieate works
3.在Linux 32位平台下
struct A1 struct A2 struct A3 struct A4 struct A5
{ { { { {
int i; int i; short w[3]; short w[3]; struct A1 a[2];
char c; char c; char c[3]; char *c[3]; struct A2 *p;
int j; char d; }; }; };
char d; int j;
}; };
1) sizeof(A1) : 16
2) sizeof(A2) : 12
3) sizeof(A3) : 10
4) sizeof(A4) : 32
5) sizeof(A5) : 40
4.写一个完整的String类
5.列举三种网络并发处理模型
6.TCP短连接和长连接的典型应用场景及各自的优缺点
7. TCP为啥是三次握手而不是二次握手
为了防止已失效的连接请求报文段突然又传送到服务器端,因而产生错误。
(详细见http://www.cnblogs.com/TechZi/archive/2011/10/18/2216751.html)
8.定义一个宏,表示某结构体成员相对于结构体头的偏移
#define OFFSETOF(TYPE, MEMBER) ((size_t) &((TYPE*)0)->MEMBER)
(参见 http://blog.csdn.net/npy_lp/article/details/7010752)
9.写一个函数,对一整形数组元素处理,输出不重复元素个数,处理完成后,数组变为不重复元素组成的数组。
10. 写一个函数,找到二叉树中两个结点的最近共同祖先。
阅读(1741) | 评论(0) | 转发(0) |