c_c++语言程序设计笔试面试题26

c_c++语言程序设计笔试面试题26

ID:12628111

大小:75.50 KB

页数:12页

时间:2018-07-18

c_c++语言程序设计笔试面试题26_第1页
c_c++语言程序设计笔试面试题26_第2页
c_c++语言程序设计笔试面试题26_第3页
c_c++语言程序设计笔试面试题26_第4页
c_c++语言程序设计笔试面试题26_第5页
资源描述:

《c_c++语言程序设计笔试面试题26》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、5.charszstr[10];strcpy(szstr,"0123456789");产生什么结果?为什么?长度不一样,会造成非法的OS6.列举几种进程的同步机制,并比较其优缺点。原子操作信号量机制自旋锁管程,会合,分布式系统7.进程之间通信的途径共享存储系统消息传递系统管道:以文件系统为基础11.进程死锁的原因资源竞争及进程推进顺序非法12.死锁的4个必要条件互斥、请求保持、不可剥夺、环路13.死锁的处理鸵鸟策略、预防策略、避免策略、检测与解除死锁15.操作系统中进程调度策略有哪几种?FCFS(先来先服务),优先级,时间

2、片轮转,多级反馈8.类的静态成员和非静态成员有何区别?类的静态成员每个类只有一个,非静态成员每个对象一个9.纯虚函数如何定义?使用时应注意什么?virtualvoidf()=0;是接口,子类必须要实现10.数组和链表的区别数组:数据顺序存储,固定大小连表:数据可以随机存储,大小可动态改变12.ISO的七层模型是什么?tcp/udp是属于哪一层?tcp/udp有何优缺点?应用层表示层会话层运输层网络层物理链路层物理层tcp/udp属于运输层TCP服务提供了数据流传输、可靠性、有效流控制、全双工操作和多路复用技术等。与TCP不

3、同,UDP并不提供对IP协议的可靠机制、流控制以及错误恢复功能等。由于UDP比较简单,UDP 头包含很少的字节,比TCP负载消耗少。tcp:提供稳定的传输服务,有流量控制,缺点是包头大,冗余性不好udp:不提供稳定的服务,包头小,开销小1:(void*)ptr和(*(void**))ptr的结果是否相同?其中ptr为同一个指针.(void*)ptr和(*(void**))ptr值是相同的2:intmain(){intx=3;printf("%d",x);return1;}问函数既然不会被其它函数调用,为什么要返回1?mia

4、n中,c标准认为0表示成功,非0表示错误。具体的值是某中具体出错信息1,要对绝对地址0x100000赋值,我们可以用(unsignedint*)0x100000=1234;那么要是想让程序跳转到绝对地址是0x100000去执行,应该怎么做?*((void(*)())0x100000)();首先要将0x100000强制转换成函数指针,即:(void(*)())0x100000然后再调用它:*((void(*)())0x100000)();用typedef可以看得更直观些:typedefvoid(*)()voidFuncPtr

5、;*((voidFuncPtr)0x100000)();2,已知一个数组table,用一个宏定义,求出数据的元素个数#defineNTBL#defineNTBL(sizeof(table)/sizeof(table[0]))面试题:线程与进程的区别和联系?线程是否具有相同的堆栈?dll是否有独立的堆栈?进程是死的,只是一些资源的集合,真正的程序执行都是线程来完成的,程序启动的时候操作系统就帮你创建了 一个主线程。每个线程有自己的堆栈。DLL中有没有独立的堆栈,这个问题不好回答,或者说这个问题本身是否有问题。因为DLL中的代

6、码是被某些线程 所执行,只有线程拥有堆栈,如果DLL中的代码是EXE中的线程所调用,那么这个时候是不是说这个DLL没有自己独 立的堆栈?如果DLL中的代码是由DLL自己创建的线程所执行,那么是不是说DLL有独立的堆栈?以上讲的是堆栈,如果对于堆来说,每个DLL有自己的堆,所以如果是从DLL中动态分配的内存,最好是从DLL中删 除,如果你从DLL中分配内存,然后在EXE中,或者另外一个DLL中删除,很有可能导致程序崩溃unsignedshortA=10;printf("~A=%u",~A);charc=128;print

7、f("c=%d",c);输出多少?并分析过程第一题,~A=0xfffffff5,int值为-11,但输出的是uint。所以输出4294967285第二题,c=0x10,输出的是int,最高位为1,是负数,所以它的值就是0x00的补码就是128,所以输出-128。这两道题都是在考察二进制向int或uint转换时的最高位处理。分析下面的程序:voidGetMemory(char**p,intnum){*p=(char*)malloc(num);}intmain(){char*str=NULL;GetMemory(&str,

8、100);strcpy(str,"hello");free(str);if(str!=NULL){strcpy(str,"world");}printf("stris%s",str);getchar();}问输出结果是什么?希望大家能说说原因,先谢谢了输出strisworld。free只是释放的st

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。