i节点和超级块:http://tech.e800.com.cn/articles/2009/520/1242789805655_1.html
一、基础题:
1.请列举出你用过的LINUX发行版及其中的GCC版本、GLIB版本
2.ISO七层参考模型中的PPP协议、HTTP协议处于哪一层?
3.说出TCP和UDP的相同和不同之处
4.IP数据包头部是多长?146.0.0.0属于哪一类IP地址?
5.请写出linux嵌入式系统开发过程
6.在以下列举的GCC中的参数,请一一写出代表的意思:
-c
-o
-share
-static
7.写出以下参数的含义:
_attribute_ (packet)
volatile
#define ANYONE((DIR)<<IO_CTCL
(FILE)<<IO_CTCL)
二、程序阅读题(输出程序结果):
3.char *p;
p=malloc(20);
char q*;
q=strcpy(p,"Please answer the question carefully");
q+=7;
printf("%s",q);
printf("%s",p);
4.#define X 1
#define Y X+1
int p;
p=x+y/2;
printf("%d",p);
5.struct n{
int p;
char name;
}a;
void structp(struct n b)
{
b.p=10;
b.name='X';
}
int main()
{
int x=5;
char name='Y';
a.p=x;
a.name=name;
structp(a);
printf("%d",a.p);
printf("%c",a.name);
}
分析以下程序,写出结果
Void GetMemory2(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory(&str, 100);
strcpy(str, "hello");
printf(str);
}
分析以下程序,写出结果
char *GetMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
}
三、程序写作题:
1.用C语言实现下现函数(不能调用库函数)
char *strcpy(char *dest,const char *src)
为什么此字符串拷贝函数还要返回一个字符指针?
2.有两个整型变量x,y如何不使用任何中间变量的同时将两个值交换
3.写出BOOl flag与零值的比较,指针与零值的比较
1.在网络数据传输时,哪种方式数据延迟最大?为了尽可能减少误码,最不宜采用哪种方式传输?分组交换主要是对数据报文传输的哪方面的改进?改进的直接结果是什么?为了达到数据的最小误码率,应采哪种方式(或组合方式)进行传输?(提示:备选答案中有:线路交换,分组交换,虚电路等等)
2.下面有一棵二叉搜索树,物理存储的方式按一个节点占三个存储单元,例如:有一结点P,在内存1001中存储P的信息,1002中存储P的左边链接指针,1003中存储P的右边链接指针,以下是一张将要存储的节点表:
P:P(节点本身信息),L1(P的左链节点指针),R1(P的右链节点指针);(以下以此类推)
W:W,L2,R2
E:E,L3,R3
R:R,L4,R4
C:C,L5,R5
将上述节点以字母表的顺序生成二叉搜索树,并存储在内存1001之后的连续单元中(存储节点时按字母顺序存储,比如C存储在1001,1002,1003中,那么E就应存储在1004,1005,1006中)。
请问:L2,R3,L5将分别存储在哪个内存单元,对此二叉搜索树进行后序遍历和前序遍历,请分别写出遍历顺序