文档介绍:C语言面试题
D
7、问:什么是进程、什么是线程,它们之间的关系?实现多任务的优缺点?
答:进程是系统资源分配的最小单位,线程是CPU调度和分配的最小单位;每个进程都拥有自己独立的系统资源,而线程基本上没有自己独立的系统资源。
关系:
一个进程中可以有多个线程,线程必须依赖于进程存在,如果进程结束了,线程也就不存在了。
每个进程都至少有一个线程,称为主线程。
多任务优缺点:
进程:
优点:父子进程资源独享,不用考虑两进程利用公共资源出现冲突。
缺点:资源开销比较大,子进程完全复制父进程的地址空间,父子进程共享数据不方便。
线程:
优点:资源开销小,共享数据比较方便
缺点:因为资源共享,多个线程对公共资源进行访问的时候要进行同步和互斥比较麻烦。
网络编程
问: tcp、udp、ip、http、telnet 协议分别位于 TCP/IP协议哪一次?
答:tcp、udp位于传书层;
ip 位于网络层;
http及telnet位于应用层。
问:路由器工作在TCP/UDP的哪一次?
答:网络层
问:DNS是什么协议?
答:域名解析协议。
问:什么是tcp协议与udp协议?它们的区别及优缺点?
答:1、用户数据报协议(UDP),UDP协议是面向无连接的不可靠服务,在传输数据之前不需要先建立连接。远地主机的运输层收到UDP报文后,不需要给出任何确认,传输数据快,能广播。
2、传输数据报协议(TCP),TCP则提供面向连接的可靠服务。在传输数据前必须先建立连接,传输数据慢,不能广播。
5、问:ip地址 属于什么ip?
答:属于私有ip
问:什么是大端什么是小端字节序?网络字节序是大端还是小端?
答:小端:低地址存放低字节,高地址存放高字节;
大端:相反;
网络字节序是:大端。
C++与QT
问:QT区别于其他应用开发工具有什么优点及缺点?
答:有较强的移至性;
开源的开发工具;
用C++语言实现,效率相对于其他面向对象语言执行效率较高;
强大的通信机制(信号和槽,比MFC回调好);
支持openGL可得到更加完美的2D/3D效果。
问:怎样理解QT,QT是一种语言吗?
答:QT是一套应用程序开发框架,也叫是开发工具或一套图形库,用C++语言来实现的。
问:QT 中信号与槽的主要作用是什么?
答:主要是在对象之间进行通信。
问:QT对信号间进行处理是通过什么方法实现的?
答:通过虚函数的方法,重新实现相应的事件函数。
问:面向对象设计与面向过程设计最大区别是什么?
答:面向对象的设计中,程序是由一个或多个对象组成的,每个对象负责不同的任务,一起让整个运行程序运行起来,每一个对象又是由不同的类实现,使得程序模块化更强。而面向过程的设计,就是程序从头到尾执行的一个过程,需要自己去