==============记得要辩证的看,毕竟我写的不是标准答案。可能有bug。================= 瑞创公司面试题 第一部分:C语言编程 1、写程序求2102!——注意:计算机没有能存储着么大的数的数据空间。 2、写一个程序表示双向链表的建立、插入、删除。 3、看下面的程序能实现两个数据的交换吗?如果不能,请说明原因。——野指针! 4、写一个宏,返回两个数中的最大值。 #define MAX(A,B) ((A)>(B) ? (A):(B)) 5、写一个程序,将一个整形数据的第12,13,14位取反。 注意:将哪位取反,就让那位跟1异或即可,那样的话,原来是1的,就会变成0,是0的,就会变成1.异或是指两位不同时得1. int opp(int *a) { return (*a) ^ ( (1<<12) || (1<<13) || (1<<14) ); } 第二部分:驱动知识 略(其实就是没记住,暂时对c的感觉比驱动好的多) 列出:动态注册、静态注册的区别?给你一个物理地址,让你将它映射了,然后将一个数据放入这个地址中。字符设备注册的过程?字符设备、块设备、网络设备都是在/dev/下面创建一个设备节点,对这个设备节点写入数据。这样的说法对吗? 第三部分:应用编程 一个CS的通信程序,实现客户端向服务器发送字母,服务器将这些字母转换成大写后发送回客户端,客户端打印出来。 让找错! 注意TCP的三次握手。其余的我没看出来(心浮气躁了已经)。 ……………………做不出题是一种很无助的感觉,就像一个孩子迷失在荒无人烟的地方,哭都没人听得见! 希望我整理的这些题,对您会有所帮助。 ==============记得要辩证的看,毕竟我写的不是标准答案。可能有bug。=================