文档库 最新最全的文档下载
当前位置:文档库 › 计算机专业复试面试题集

计算机专业复试面试题集

计算机专业复试面试题集
计算机专业复试面试题集

计算机专业复试集锦

1. 什么是程序局部性,为什么会有程序的空间局部性?

程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。

2. 比较TCP与UDP

TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。TCP 提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等。

UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。

3. 网络协议的三个核心要素,及概念.各起什么作用?

语法,定义了数据与控制信息的格式;

语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应;

同步,定义了事件实现顺序的详细说明;

4. 关系数据库都有那些操作,特点是什么?

◇查询:选择、投影、连接、除、并、交、差

◇数据更新:插入、删除、修改

关系操作的特点:集合操作方式,即操作的对象和结果都是集合。

5. 解释一下网络体系结构,它得实现和理论有什么区别?

是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。

6. 为了实现重定位需要哪些硬件?

最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,

以及快表等硬件。

7. 数据库保护(访问)的内容有哪些?

利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制

8. 在交互式系统中,非剥夺是不是一个好的策略?为什么?

非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程、优先原则、时间片原则。

在分时系统中不剥夺并不是一个好的策略。因为,在分时系统中,除了交互性以外,及时性是很重要的性能因素。当一个作业被阻塞后,CPU就完全空闲了,别的用户的及时性就无法保证了,而完全可以把这些时间分配给别的作业运行。以提高整体的吞吐量。

9. DBA的职责是什么?

DBA则是这个机构的一个(组)人员,负责全面管理和控制数据库系统.职责有:

(1)决定数据库中的信息内容和结构:数据库中要存放哪些信息

(2)决定数据库的存储结构和存取策略:获得较高的存取效率和存储空间利用率

(3)约定义数据的安全性要求和完整性约束条件:负责确定各个用户对数据库的存取权限、数据的保密级别和完整性约束条件

(4)监控数据库的使用和运行:转储数据、维护日志文件、故障恢复

(5)数据库的改进和重组重构:对运行情况进行记录、统计分析,以此来不断改进数据库设计

10. 系统调用的定义

系统调用是OS与应用程序之间的接口,它是用户程序取得OS服务的惟一途径。它与一般的过程调用的区别: 运行在不同的系统状态。调用程序在运行在用户态,而被调用的程序运行在系统态; 通过软中断机制,先由用户态转为系统态,经枋心分析后,才能转向相应的系统调用处理子程序; 一般的过程调用返回后继续执行,但对系统调用,当调用的进程仍具有最高优先权时,才返回到调用进程继续处理;否则只能等被重新调度;

11. 死锁是什么?

指多个有关进程由于争夺资源而造成的一种僵局,在无外力的情况下这些进

程都将无法再向前推进的状态。

12. CPU不执行程序的时候干什么?

当没有被任何程序使用的时候,计算机的处理器被认为是空闲的。当然下面提到的空闲任务不在此列中。当有程序利用CPU空闲时间的时候,就意味着它以较低的优先权运行着,以便不会影响那有正常优先权的程序运行。一般来讲,这会引起CPU消耗更多的电能,而大多数的现代CPU当它们空闲的时候是能够进入省电模式的。大多数操作系统都有个空闲任务,它是一个特殊的任务。仅当CPU无事可做的时候由操作系统调度器载入它。在现代的处理器中,HLT停机指令节省了大量的电能与执量,而空闲任务几乎总是由一个重复执行HLT停机指令的循环组成。

13. 举例解释一下同步和互斥

同步表现为直接制约,如管道通信,一个进程写,一个进程读,它们是相互制约的。互斥表现为间接制约,比如多个进程同时请求打印机(没使用SPOOLing 技术)、多个进程同时请求一张网卡发送数据包等。

14. 解释一下管程

管程是由一组局部变量、对局部变量进行操作的一组过程和对局部变量进行初始化的语句序列组成。引入它的目的是因为Wait/Singal操作太过分散,对它的维护很麻烦且容易造成死锁。管程的特点是:管程的过程只能访问管程的局部变量,管程的局部变量只能由其过程来访问;任何时刻只能有一个进程进入管程执行;进程只能通管程提供的过程入口进入管程;

15. 在可变分区管理中,需要哪些硬件机制

采用可变分区方式管理时,一般均采用动态重定位方式装入作业。地址变换要靠硬件支持,主要是两个寄存器:基址寄存器和限长寄存器,限长寄存器存放作业所占分区的长度,基址寄存器则存放作业所占分区的起始地址,这两个值确定了一个分区的位置和大小。

转换时根据逻辑地址与限长值比较,如果不有超过这个值,表示访问地址合法,再加上基址寄存器中的值就得到了绝对地址了,否则形成“地址越界”中断。

16. 中断和陷入有什么异同?

外中断时指来自处理机和内存外部的中断,如I/O中断、定时器中断、外部信号中断等。狭义上也叫中断; 内中断主要指在处理机和内存内部产生的中断,

也称陷入,如校验错、页面失效、溢出、除数为零等;

中断和陷阱的主要区别:

(1)陷入通常由处理机正在执行的现行指令引起,而中断则是由与现行指令无关的中断源引起的。

(2) 陷阱处理程序提供的服务为当前进程所用,而中断处理程序提供的服务则不是为了当前进程的。

(3) CPU在执行完一条指令之后,下一条指令开始之前响应中断,而在一条指令执行中也可以响应陷阱。

17. 数据库系统和文件系统相比有什么优点? 文件系统数据库管理系统某一应用

18. 计算机网络和分布式计算机系统的区别?

两者在计算机硬件连接、系统拓朴结构和通信控制等方面基本都是一样的,它们都具有通信和资源共享的功能。区别关键在于:分布式计算机系统是在分布式计算机操作系统支持下,进行分布式数据库处理的,也就是说各互联的计算机可以互相协调工作,共同完成一项任务,多台计算机上并行运行。且具有透明性,用户不知道数据、资源的具体位置,整个网络中所有计算机就像是一台计算机一样;而计算机网络却不具备这种功能,计算机网络系统中的各计算机通常是各自独立进行工作的。

19. 为什么引入多道程序技术?

因为引入多道程序技术后,可以进一步提高了CPU利用率(阻塞),提高内存和I/O设备利用率(小作业把内存浪费了),增加系统吞吐量(两都提高后的必

然)。

20. 什么是管态?什么是目态?它们与进程运行状态的关系是什么?

CPU交替执行操作系统程序和用户程序。管态又叫特权态,系统态或核心态。CPU在管态下可以执行指令系统的全集。通常,操作系统在管态下运行。

目态又叫常态或用户态。机器处于目态时,程序只能执行非特权指令。用户程序只能在目态下运行,如果用户程序在目态下执行特权指令,硬件将发生中断,由操作系统获得控制,特权指令执行被禁止,这样可以防止用户程序有意或无意的破坏系统。

21. n个任务一个cup,阻塞,运行,就绪的进程最多有多少个?

阻塞n个;运行1个;就绪n-1个;

22. 波特和比特的区别?

波特是码元传输的踵率单位,说明每秒传多少个码元。码元传输速率也称为调制速率、波形速率或符号速率。

比特是信息量的单位,与码元的传输速率"波特"是两个完全不同的概念。但是,信息的传输速率"比特/秒"与码元的传输速率"波特"在数量上却有一定的关系。

23. 什么是网络延时

时延(delay或latency)是指一个报文或分组从一个网络(或一条链路)的一端传送到另一端所需的时间。

24. 什么是完整性约束

强制数据完整性可确保数据库中的数据质量。

25. 什么是码元?什么是码元长度?

在数字通信中常常用时间间隔相同的符号来表示一位二进制数字。这样的时间间隔内的信号称为二进制码元,而这个间隔被称为码元长度。

26. 结合Internet,说说有连接服务和无连接的服务?

面向连接服务具有连接建立、数据传输和连接释放这三个阶段。面向连接服务是在数据交换之前,必须先建立连接。当数据交换结束后,则必须终止这个连接。在传送数据时是按序传送的,是可靠交付。面向连接服务比较适合于在一定期间内要向同一日的地发送许多报文的情况。

无连接服务,两个实体之间的通信不需要先建立好一个连接,因此其下层的

有关资源不需要事先进行预定保留。这些资源将在数据传输时动态地进行分配。无连接服务的优点是灵活方便和比较迅速。但无连接服务不能防止报文的丢失、重复或失序。是一种不可靠的服务。这种服务常被描述为"尽量大努力支付"。

27. 点对点和端到端工作在哪层?工作机制?

28. DBMS支持那几种数据模型

29. 父子进程是否可以并发运行

30. SQL的四个组成部分?

31. 数据库操纵语言举例

32. 介绍下有哪些应用数据库?

33. 什么是数据独立性。

34. 网络时延又拿几部分组成?各产生于何处?

35. 实体协议服务

36. 1NF是啥,数据模式

37. 缓冲的定义,为什么引入

38. TCP/IP网络协议的核心是什么,如何引出“over everything”和“everythingover ?”

39. 数据库的关系操作有哪些?各有什么作用?

40. 用白军和蓝军解释下没有100%可靠的通信

数据库

1.文件系统和DBS的最大区别在什么地方,DBS还有哪些特点。

2. 和文件系统相比,数据库文件有什么优点?

3.试述DBMS的数据模型;,DBMS 支持那几种数据模型

4.系数据库的关系操作都有那些,特点是什么?

5.数据库保护(访问)的内容有哪些?

是啥,数据模式,

7.数据库操纵语言举例

的职责是什么?

9.完整性约束是什么

10.介绍下有哪些应用数据库?

11..SQL的四个组成部分?

在不执行任何程序时在做什么。

2,根据蓝军白军分析不可能有百分之百的协议。

3:什么是系统调用..

4:结合Internet,说明怎么得到有连接和无连接的服务?

5:什么是缓冲?引入缓冲的作用是什么?

6:网络协议的三要素是什么?各起什么作用?

7.点对点和端到端工作在纳层?工作机制?

8.什么是管程?

9.,为什么会有程序的空间局部性?

10.比较TCP/UDP

11.父子进程是否可以并发运行

12.网络协议的三个核心要素,及概念:3个核心要素就是:协议,服务,接口(语

法语义同步)

13.解释一下网络体系结构,它得实现和理论有什么区别?

14.为了实现重定位需要哪些硬件?

15.网络时延由哪3部分组成?各产生于何处?

16.在交互式系统中,非剥夺是不是一个好的策略?why?

17.什么叫1, 实体协议服务

18.缓冲的定义,为什么引入

19.系统调用的定义

20.死锁是什么?

21.举例解释一下同步和互斥

22.还有关于管程的

23.父进程跟子进程能并发执行吗?

24.网络时延又拿几部分组成?各产生于何处?

25.在可变分区管理中,需要哪些硬件机制

26.协议的三要素是什么?请分别说明?

27.中断和陷入有什么异同?

28.计算机网络和分布式计算机系统的区别?

29.为什么引入多道程序技术?

IP网络协议的核心是什么,如何引出“? over everything”和“everything over ?”

31.什么是数据独立性。

32.什么是管态?什么是目态?它们与进程运行状态的关系是什么?

33.在没有程序运行时,CPU在做什么

34.以INTERNET为例,说明用户怎样获得面向连接服务和面向非连接服务

35.在n个cpu中,阻塞,运行,就绪的进程最多有多少个?

36.波特和比特的区别?

37.可变分区需要什么硬件支持

38.电路与分组交换的区别

计算机面试问题

计算机面试问题 死锁问题,银行家算法, 产生原因:竞争资源,进程间的推进顺序非法必要条件:互斥,请求和保持,不剥夺,环路等待(预防死锁即是是后面三个条件之一不能成立) 处理方法:预防死锁,避免死锁,检测死锁,解除死锁(剥夺资源或者撤销进程) 银行家算法:最具代表性的避免死锁的算法,由牛人Dijkstra 提出,鉴于学过操作系统的都该懂,此处不再详述。 网络操作系统与分布式操作系统的区别, 网络操作系统是使联网的计算机能方便而有效的共享网络资源,为网络用户提供所需各种服务的软件和协议的集合。其功能主要包括高效,可靠的网络通信;对网络中的共享资源进行有效管理;提供电子邮件,文件传输,共享硬盘,打印机等服务;网络安全管理;提供互操作能力。分布式操作系统是由多个分散的计算机经网络连接而成的计算机系统,系统中的计算机无主次之分,任意两台计算机可以通过通信交换信息。为分布式计算机配置的操作系统就是“分布式操作系统”(注意:分布式操作系统是网络操作系统的更高级形式,它保持了网络系统所拥有的全部功能,同时又具有透明性,可靠性,高性能等)。它能直接对系统中的各类资源进行动态的分配和调度,任务划分,信息 1 传输协调工作,并为用户提供一个统一的界面和标准的接口,用户通过这一界面实现所需要的从操作以及使用系统资源,使系统中的若干台计算机相互协作以完成共同的任务,有效控制和协调诸任务的并行执行,并向系统提供统一的,有效的接口软件集合。网络操作系统和分布式操作系统 1 虽然都属于管理分布在不同地理位置上的操作系统,但最大的差别是:网络操作系统工作时必须确认网址,而分布式操作系统则不必知道计算机的确切地址;分

计算机复试面试题目大全

1. 什么是程序局部性,为什么会有程序的空间局部性? 程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。 空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。 2. 比较TCP与UDP TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。 TCP提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等 UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。 3. 网络协议的三个核心要素,及概念 .各起什么作用? 语法,定义了数据与控制信息的格式; 语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明; 4. 关系数据库都有那些操作,特点是什么? ◇查询:选择、投影、连接、除、并、交、差 ◇数据更新:插入、删除、修改 关系操作的特点:集合操作方式,即操作的对象和结果都是集合。 5. 解释一下网络体系结构,它得实现和理论有什么区别? 是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。 网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。 国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。 6. 为了实现重定位需要哪些硬件? 最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。 7. 数据库保护(访问)的内容有哪些? 利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制 8. 在交互式系统中,非剥夺是不是一个好的策略?为什么? 非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。 剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程、优先原则、时间片原则。 在分时系统中不剥夺并不是一个好的策略。因为,在分时系统中,除了交互性以外,及时性是很重要的性能因素。当一个作业被阻塞后,CPU就完全空闲了,别的用户的及时性就无法保证了,而完全可以把这些时间分配给别的作业运行。以提高整体的吞吐量。 9. DBA的职责是什么? DBA则是这个机构的一个(组)人员,负责全面管理和控制数据库系统.职责有: (1)决定数据库中的信息内容和结构:数据库中要存放哪些信息

计算机常见算法面试题

简介:计算机考研之家搜集的华为C语言经典面试题,来试试你的C语言水平吧。每道题都附有详细解答和讲解,很有参考价值的C语言面试题。 怎么判断链表中是否有环? bool CircleInList(Link* pHead) { if(pHead = = NULL || pHead->next = = NULL)//无节点或只有一个节点并且无自环 return (false); if(pHead->next = = pHead)//自环 return (true); Link *pTemp1 = pHead;//step 1 Link *pTemp = pHead->next;//step 2 while(pTemp != pTemp1 && pTemp != NULL && pTemp->next != NULL) { pTemp1 = pTemp1->next; pTemp = pTemp->next->next; } if(pTemp = = pTemp1) return (true); return (false); } 两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串 void insert(char *s, char *t, int i) { memcpy(&s[strlen(t)+i],&s[i],strlen(s)-i); memcpy(&s[i],t,strlen(t)); s[strlen(s)+strlen(t)]='\0'; } 1。编写一个C 函数,该函数在一个字符串中找到可能的最长的子字符串,且该字符串是由同一字符组成的。 char * search(char *cpSource, char ch) { char *cpTemp=NULL, *cpDest=NULL; int iTemp, iCount=0; while(*cpSource) { if(*cpSource == ch) { iTemp = 0; cpTemp = cpSource; while(*cpSource == ch) ++iTemp, ++cpSource; if(iTemp > iCount)

计算机基础知识面试题库

对于项目 1. 明确你的项目到底是做什么的,有哪些功能 2. 明确你的项目的整体架构,在面试的时候能够清楚地画给面试官看并且清楚地指出从哪里调用到哪里、使用什么方式调用 3. 明确你的模块在整个项目中所处的位置及作用 4. 明确你的模块用到了哪些技术,更好一些的可以再了解一下整个项目用到了哪些技术 操作系统 1.操作系统的四大特性: a)并发性 b)共享性 c)虚拟性 d)不确定性 2.请叙述一下并发和并行两个概念的区别? a)并行是指两个或多个事件在同一时刻发生,并发是指两个或多个事件在同一时间 间隔内发生。 3.什么是进程?什么是线程? a)“进程是一个可并发执行的,具有独立功能的程序关于某个数据集合的一次执行过 程,也是操作系统进行资源分配和调度的独立单位”。进程是资源分配的基本单 位。 b)线程也称为轻量级进程(LWP),是程序执行流量的最小单位,它是进程的一个实 体,是系统独立调度和分派处理机的基本单位。线程是操作系统调度的最小单 位。 4.进程和线程的区别?从调度、并发性、拥有资源和系统开销四个方面来比较: a)调度。在引入线程的操作系统中,把线程作为调度和分派CPU的基本单位,把进 程作为资源分配的基本单位,显著提高了并发程度。由于系统调度的基本单位是 线程,所以每个进程至少创建一个线程,否则无法被调度。 b)并发性。多线程可以提高服务的质量,在一个线程阻塞时,还有其他线程提供服 务。

c)拥有资源。进程是拥有资源的独立单位,线程自己不拥有系统资源,而是共享进 程的资源(包括代码段、数据段即系统资源等)。 d)系统开销。进程切换的开销远远大于线程切换的开销,进程的切换需要保存很多 现场,但线程只需要保存和设置少量的寄存器内容,不涉及存储器管理方面的操 作。 5.进程的特征: a)动态性:进程是动态产生和动态消亡的,有其生存周期。 b)并发性:一个进程可以与其他进程一起向前推进。 c)独立性:一个进程是一个相对完整的调度单位。 d)异步性:每个进程都已相对独立、不可预知的速度向前推进。 e)结构性:为了控制和管理进程,系统为每个进程设立一个进程控制块(PCB)。 6.进程有几种状态? a)就绪状态 b)运行状态:单CPU环境下,系统处于运行状态的进程最多只有一个。 c)阻塞状态 7.进程的组成: a)程序: b)数据集合:进程独有 c)进程控制块(PCB):它和进程一一对应,PCB是操作系统能感知进程存在的唯一标 识,操作系统正是通过管理PCB来管理进程的。系统创建进程时,为每个进程分 配PCB,进程执行完成后,系统释放PCB,进程也随之消亡。 8.进程的切换: a)进程上下文包含用户级上下文、系统级上下文、寄存器上下文 b)进程上下文切换是核心态的切换,不发生在用户态。 c)用户态到核心态之间的转变是CPU模式的改变。模式切换不同于进程切换,并不 引起进程状态的改变。 9.为什么会提出线程这个概念?进程的缺点是什么? a)进程切换开销大 b)进程通信代价大 c)进程之间并发性粒度粗,并发度不高

计算机专业复试面试题集

计算机专业复试集锦 1.什么是程序局部性,为什么会有程序的空间局部性? 程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。 2.比较TCP与UDP TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。TCP 提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等。 UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音等。 3.网络协议的三个核心要素,及概念.各起什么作用? 语法,定义了数据与控制信息的格式; 语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明; 4.关系数据库都有那些操作,特点是什么? ◇查询:选择、投影、连接、除、并、交、差 ◇数据更新:插入、删除、修改

关系操作的特点:集合操作方式,即操作的对象和结果都是集合。 5. 解释一下网络体系结构,它得实现和理论有什么区别? 是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。 6.为了实现重定位需要哪些硬件? 最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。 7.数据库保护(访问)的容有哪些? 利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制 8.在交互式系统中,非剥夺是不是一个好的策略?为什么?

算法经典面试题

算法经典面试题 世界上第一位程序员是英国著名诗人拜伦的女儿AdaLovelace曾设计了巴贝奇分析机上解伯努利方程的一个程序。她甚至还建立了循环和子程序的概念。下面就由X为大家介绍一下程序员面试算法题的文章。 程序员面试算法题篇1 题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 10 / \ 6 14 / \ / \ 4 8 12 16 转换成双向链表 4=6=8=10=12=14=16。 思路一:当我们到达某一个节点准备调整以该节点为根节点的子数时,先调整其左子树将左子树转换成一个排好序的左子链表,再调整其右子树转换成右子链表。最近链接左子链表的最右节点、当前节点和右子链表的最左节点。从树的根节点开始递归调整所有节点。

思路二:我们可以中序遍历整个树。按照这个方式遍历树,比较小的节点优先访问。如果我们每访问一个节点,假设之前访问过的节点已经调整为一个排序的双向链表,我们再把调整当前节点的指针链接到链表的末尾。当所有的节点都访问过之后,整棵树也就转换成一个排序的双向链表了。 参考代码: 二元查找树的节点数据结构: structBSTreeNode{ int value; BSTreeNode *m_left; BSTreeNode *m_right; } 思路二对应的代码: void ConvertNode(BSTreeNode* pNode, BSTreeNode*& pLastNodeInList) { if(pNode == NULL) return; BSTreeNode *pCurrent = pNode; // Convert the left sub-tree if (pCurrent->m_pLeft != NULL) ConvertNode(pCurrent->m_pLeft, pLastNodeInList);

面试逻辑题目汇总

1.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同 的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢? 2.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取不同种颜色的 两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻? 3.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形 状上下都不均匀,问你如何才能准确称出4公升的水?(40秒-3分钟) 4.一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的, 另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪条路,需要问这两个人。请问应该怎么问? 5.村子中有50个人,每人有一条狗。在这50条狗中间有病狗(这种病不会传 染)。于是人们就要找出病狗。每个人可以观察其他的49条狗,以判断它们是否生病,只有自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要枪毙自己的狗,而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。第一天,第二天都没有枪响。到了第三天传来一阵枪声,问有几条病狗,如何推算得出? 6.S先生、P先生、Q先生他们知道桌子的抽屉里有16张扑克牌:红桃A、Q、 4 黑桃J、8、4、2、7、3 草花K、Q、5、4、6 方块A、5。约翰教授从这 16张牌中挑出一张牌来,并把这张牌的点数告诉P先生,把这张牌的花色告诉Q先生。这时,约翰教授问P先生和Q 先生:你们能从已知的点数或花色中推知这张牌是什么牌吗?于是,S先生听到如下的对话: P先生:我不知道这张牌。 Q先生:我知道你不知道这张牌。 P先生:现在我知道这张牌了。 Q先生:我也知道了。 听罢以上的对话,S先生想了一想之后,就正确地推出这张牌是什么牌。请问:这张牌是什么牌? 7.两个男孩各骑一辆自行车,从相距2O英里(1英里合1.6093千米)的两个 地方,开始沿直线相向骑行。在他们起步的那一瞬间,一辆自行车车把上的一只苍蝇,开始向另一辆自行车径直飞去。它一到达另一辆自行车车把,就立即转向往回飞行。这只苍蝇如此往返,在两辆自行车的车把之间来回飞行,直到两辆自行车相遇为止。如果每辆自行车都以每小时1O英里的等速前进,苍蝇以每小时15英里的等速飞行,那么,苍蝇总共飞行了多少英里? 8.有位渔夫,头戴一顶大草帽,坐在划艇上在一条河中钓鱼。河水的流动速度 是每小时3英里,他的划艇以同样的速度顺流而下。“我得向上游划行几英里,” 他自言自语道,“这里的鱼儿不愿上钩!”

(完整版)计算机软件专业考研英语面试必备问题

软件工程(或计算机专业)英语面试,这是本人复试是整理的,成绩一般,大神勿喷。为什么考研(很重要的点,我是软件工程专业的,本段是关于软件工程的) I learnt a lot from university courses during the past four year. However,I think furtherstudy is still urgent for me to realize self-value. Life is precious. It is necessary to seize any chance for self-development,especially in this competitive modern world. And,I am looking forward to making a solid foundation for future profession after two years study here. The major that I hope pursue for my further education is program design. Because I find software are playing a more and more important role in each part of our modern society. And nowadays in China, with the recognition by the government, our domestic software industry is growing rapidly and that may provide a lot of chances to us. I plan to concentrate on study and research in this field in my graduate time. And I hope I can form a systematic view of software engineering and make a solid foundation for future profession after three years study here. 自我介绍 Good morning. I am very glad to be here for this interview. First,let me introduce myself. I come from Suqian city jiangsu province. I will graduate from nanjing university of posts and telecommunications in july this year.In the university, my major is software engineering.I like this major, my ideal is to become an outstanding software engineer.I have learned a lot of courses in the college, data structure, database, software engineering, computer network, software testing, etc.I spent a lot of time to learn the course. In my spare time, I like reading some domestic and foreign literature and magazines, such as "Eugenie Grandet", "the reader". I think reading can increase their self-cultivation and logical ability, and it can exercise a person's patience. I am also very interested in the football, My favorite team is Real Madrid.(本段有语法错误,不过面试中,老师不会在意的,老师只会在意你的流畅度和发音。大神可自行修改) I learnt a lot from university courses during the past four year. However,I think further study is still urgent for me to realize self-value. Life is precious. It is necessary to seize any chance for self-development,especially in this competitive modern world. And,I am looking forward to making a solid foundation for future profession after Two and a half years study here. I want to improve programming ability. Because I find software are playing a more and more important role in each part of our modern society. And nowadays in China, with the recognition by the government, our domestic software industry is growing rapidly and that may provide a lot of chances to us. I plan to concentrate on study and research in this field in my graduate time. And I hope I can form a systematic view of software engineering and make a solid foundation for future profession after two and a half years study in this famous university. That is all, thank you very much. 问题篇(划线部分为必须掌握的点,听不懂的点千万别说pardon,就算再说一遍一般也听不懂) 1、Where are you from? 1、你来自哪里? I come from suqian in the north of Jiangsu province, it is not famous, but it has a very long history. Suqian is the hometown of Xiang Yu.The native place of xiang yu is located at the ancient wotong lane, birthplace of the overlord in the west chu period.Every year a lot of people come to visit it.Suqian also has a very good ecological and cultural environment, I love my hometown.

面试常见问题_计算机网络

计算机网络 OSI与TCP/IP各层的结构与功能,都有哪些协议。

TCP/IP

相似之处:

基于独立的协议族,层的功能划分相似 差异: ISO/OSI:从概念模型到协议实现; TCP/IP:从协议实现到概念描述 层次数量差别; 2.TCP与UDP的区别。 ●UDP(UserDatagramProtocol):不提供复杂的控制机制,利用IP提供面向无连接的通信 服务。并且他是将应用程序发来的数据在收到那一刻,立刻按照原样发送到网络上的一种机制。即使出现网络拥堵,UDP也无法进行流量控制等避免拥塞的行为。如果传输途中出现丢包,也不负责重发。甚至出现包的到达乱序时也没有纠正功能。如果需要这些细节控制,要交给采用UDP的应用程序处理。UDP将控制转移到应用程序,只提供作为传输层协议的最基本功能。 ●TCP(TransmissionControlProtocol):TCP充分实现了数据传输时的各种控制功能,可 以进行丢包的重发控制、对乱序的分包进行顺序控制。此外,TCP作为一种面向有链接的协议,只有在确认通信对端存在时才会发送数据,从而可以控制通信流量的浪费。 ●TCP通过检验和、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠 性传输。 ●如何加以区分使用?

TCP用于传输层有必要实现可靠性传输的情况。UDP主要用于对高速传输和实时性有较高要求的通信或广播通信。 区别: 1)TCP面向连接;UDP是无连接的,发送数据之前不需要建立连接。 2)TCP提供可靠的服务。TCP传送的数据无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,不保证可靠交付。 3)TCP面向字节流,实际上TCP把数据看成一串无结构的字节流;UDP是面向报文的,UDP 没有拥塞控制,网络出现拥塞不会使源主机的发送速率降低。 4)每一条TCP连接只能是点对点的;UDP支持一对一、一对多、多对一和多对多的交互通信5)TCP首部开销20字节;UDP首部开销8字节; 6)TCP逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道 3.TCP报文结构。 ?IP结构 首部固定长度20字节,所有IP数据报必须具有。 可选字段,长度可变。 ?版本:占4位,值IP协议的版本,当前IP协议版本号为4(IPv4) ?首部长度:4位,表示最大数值是15个单位(一个单位4字节),首部最大值为60字节。?区分服务:未被使用。

教师资格证面试结构化真题解析思路综合分析类25道题

教师资格证面试结构化真题解析思路——综合分析类(25道题) 1.如果一个老师上课拖堂了,同学指出应该下课了,老师气呼呼的摔门而去,你怎么看? 题型:综合分析-观点类 分析:要从教师及学生两方面进行分析,各有合理之处,也存在一定的问题。不能全盘否定,要辩证的看待。 参考答案: 点题:老师上课拖堂了,同学指出应该下课了,老师气呼呼的摔门而去,这个教师的作法就欠妥当,同学们直接指出老师问题,也不够礼貌。 析题:作为老师,可能出发点是好的,希望学生多学习知识,取得理想的教学效果,但是不能提倡拖堂,因为首先,占用学生休息时间用来上课,本身会招来学生的反感和抵触情绪。人在教室,心思早已飘出课堂,不能达到很好的教学效果。其次教师应该及时反思,自己的教学安排是否恰当可行,在以后的教学计划中,精简内容,突出重点,吸引学生。最后,当学生指出问题之后,应该虚心接受,不能摔门而出,学生具有向师性,不好的行为,学生也会模仿,不利于学生身心全面发展及良好品行的形成。 作为学生,题目中的学生作法也不妥当,应该在课下开诚布公的告诉老师,或者给代课教师写一封信,做到友好交流,共同解决问题才是关键。 总结:总之,这位教师应该多反思,树立终身学习的理念,不断更新教学的内容和方法。才能适应新时期素质教育要求,形成良好的师生关系,成为受学生欢迎的教师。这些学生也要体会教师的良苦用心,用合适的方法来反映教师的一些问题。 2.有的老师上课的时候频频使用多媒体,给学生播放电影,学生反映老师讲的内容少,你怎么看? 题型:综合分析—现象类 分析:本题采用主体分析法进行作答。这道题目中的主体是老师、学生两个,那就从这两个主体进行分析。 从老师的角度看,希望授课时课程生动,但是方法有所欠缺,缺乏必要知识的引导总结; 从学生角度讲,学生是学习的主体,学习更多知识是追求,反映学生的成长进步等。 参考答案: 点题:有的老师上课的时候频频使用多媒体,给学生播放电影,学生反映老师讲的内容少,对于这种现象,我有以下几点看法:

银行招聘计算机专业面试题及答案【最新】

银行招聘计算机专业面试题及答案 1. 什么是程序局部性,为什么会有程序的空间局部性? 程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。 空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。 2. 比较TCP与UDP TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。 TCP提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等 UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。

3. 网络协议的三个核心要素,及概念.各起什么作用? 语法,定义了数据与控制信息的格式; 语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明; 4. 关系数据库都有那些操作,特点是什么? ◇查询:选择、投影、连接、除、并、交、差 ◇数据更新:插入、删除、修改 关系操作的特点:集合操作方式,即操作的对象和结果都是集合。 5. 解释一下网络体系结构,它得实现和理论有什么区别? 是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。

国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。 6. 为了实现重定位需要哪些硬件? 最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。 7. 数据库保护(访问)的内容有哪些? 利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制 8. 在交互式系统中,非剥夺是不是一个好的策略?为什么? 非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直

计算机专业复试面试经典问题(含答案)

1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 2. 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢while(1){}或者for(;;){} 3. 用变量a给出下面的定义 a) 一个整型数(An integer) b)一个指向整型数的指针(A pointer to an integer) c)一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an intege)r d)一个有10个整型数的数组(An array of 10 integers) e) 一个有10个指针的数组,该指针是指向一个整型数的。(An array of 10 pointers to integers) f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers) g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument and returns an integer) h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数(An array of ten pointers to functions that take an integer argument and return an integer ) 答案是: a) int a; 键字static的作用是什么 这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用: 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。 3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。 大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。 5. 关键字const有什么含意表示常量不可以修改的变量。 const int a; int const a; const int *a; int * const a; int const * a const; 前两个的作用是一样,a是一个常整型数。第三个意味着a是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。第四个意思a是一个指向整型数的常指针(也就是说,指针指向的整型数是可以修改的,但指针是不可修改的)。最后一个意味着a是一个指向常整型数的常指针(也就是说,指针指向的整型数是不可修改的,同时指针也

[第1题-60题汇总]微软数据结构+算法面试100题

精选微软等公司数据结构 精选微软等公司数据结构++算法面试100题 -----[第1题-60题总] 资源说明: 此份,是为微软等公司数据结构+算法面试100题,之前60题的汇总。 总结整理了前第1题-第60题。特此并作此一份上传。以飨各位。:)。 -------------------------------- 相关资源,包括答案,下载地址: [答案V0.2版]精选微软数据结构+算法面试100题[前20题]--答案修正 https://www.wendangku.net/doc/416141152.html,/source/2813890 //此份答案是针对最初的V0.1版本,进行的校正与修正。 [答案V0.1版]精选微软数据结构+算法面试100题[前25题] https://www.wendangku.net/doc/416141152.html,/source/2796735 [第二部分]精选微软等公司结构+算法面试100题[前41-60题]: https://www.wendangku.net/doc/416141152.html,/source/2811703 [第一部分]精选微软等公司数据结构+算法经典面试100题[1-40题] https://www.wendangku.net/doc/416141152.html,/source/2778852 更多资源,下载地址: http://v_july_https://www.wendangku.net/doc/416141152.html,/ 很快,我将公布第21-40题的答案,敬请期待。:).. 如果你对以下的前第1-60题,有好的思路,和算法,欢迎跟帖回复, 或者,联系我,发至我的邮箱, zhoulei0907@https://www.wendangku.net/doc/416141152.html,。 My CSDN Blog:https://www.wendangku.net/doc/416141152.html,/v_JULY_v My sina Blog:https://www.wendangku.net/doc/416141152.html,/shitou009 帖子维护地址: [整理]算法面试:精选微软经典的算法面试100题[前1-60题] https://www.wendangku.net/doc/416141152.html,/u/20101023/20/5652ccd7-d510-4c10-9671-307a56006e6d.html -------------------------------------- July、2010、/11.12.请享用。:)。 1

面试常见问题计算机网络

计算机网络OSI与TCP/IP各层的结构与功能,都有哪些协议。 ISO/OSI模型用途主要作用协议 应用层进程间通信为操作或网络应用程序提供访问 网络服务的接口。TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 表示层数据表示(编码)解决用户信息的语法表示问题。 提供格式化的表示和转换数据服 务。数据的压缩和解压缩,?和解 密等工作都由表示层负责。 无协议 会话层建立和管理主机 间的会话会话层不参与具体的传输,它提供 包括访问验证和会话管理在内的 建立和维护应用之间通信的机制。 如服务器验证用户登录便是由会 话层完成的。(以上统称报文) 无协议 传输层端到端链接提供主机之间连接,屏蔽技术细 节。将分组组成报文,可靠传输、 流量控制。为上层提供端到端(最 终用户到最终用户)的透明的、可 靠的数据传输服务。 TCP,UDP 网络层寻址路径选择为传输层提供建立、维护和网络连 接,解决路由选择。数据单元--- 分组packet IP,ICMP,RIP,OSPF,BGP,IGMP 数据链路层占用传输介质数据链路层在不可靠的物理介质 上提供可靠的传输。建立相邻结点 之间的数据链路,通过差错控制提 供数据帧(Frame)在信道上无差 错的传输。作用;物理地址寻址、 数据的成帧、流量控制、数据的检 错、重发。?SLIP,CSLIP,PPP,ARP,RARP,MTU

TCP/IP 相似之处: 基于独立的协议族,层的功能划分相似差异: ISO/OSI:从概念模型到协议实现;TCP/IP:从协议实现到概念描述

层次数量差别; 2.TCP与UDP的区别。 UDP(UserDatagramProtocol):不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且他是将应用程序发来的数据在收到那一刻,立刻按照原样发送到网络上的一种机制。即使出现网络拥堵,UDP也无法进行流量控制等避免拥塞的行为。如果传输途中出现丢包,也不负责重发。甚至出现包的到达乱序时也没有纠正功能。如果需要这些细节控制,要交给采用UDP的应用程序处理。UDP将控制转移到应用程序,只提供作为传输层协议的最基本功能。 TCP(TransmissionControlProtocol):TCP充分实现了数据传输时的各种控制功能,可以进行丢包的重发控制、对乱序的分包进行顺序控制。此外,TCP作为一种面向有链接的协议,只有在确认通信对端存在时才会发送数据,从而可以控制通信流量的浪费。 TCP通过检验和、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠性传输。 如何加以区分使用? TCP用于传输层有必要实现可靠性传输的情况。UDP主要用于对高速传输和实时性有较高要求的通信或广播通信。 区别: 1)TCP面向连接;UDP是无连接的,发送数据之前不需要建立连接。 2)TCP提供可靠的服务。TCP传送的数据无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,不保证可靠交付。 3)TCP面向字节流,实际上TCP把数据看成一串无结构的字节流;UDP是面向报文的,UDP没有拥塞控制,网络出现拥塞不会使源主机的发送速率降低。 4)每一条TCP连接只能是点对点的;UDP支持一对一、一对多、多对一和多对多的交互通信 5)TCP首部开销20字节;UDP首部开销8字节; 6)TCP逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道 3.TCP报文结构。 IP结构 首部固定长度20字节,所有IP数据报必须具有。 可选字段,长度可变。

计算机常见技术面试题

第1章C/C++部分 面向对象的三个基本特征,并简单叙述之? 1. 封装:将客观事物抽象成类,每个类对自身的数据和方法实行protection(private, protected,public) 2. 继承:广义的继承有三种实现形式:实现继承(指使用基类的属性和方法而无需额外编码的能力)、可视继承(子窗体使用父窗体的外观和实现代码)、接口继承(仅使用属性和方法,实现滞后到子类实现)。前两种(类继承)和后一种(对象组合=>接口继承以及纯虚函数)构成了功能复用的两种方式。 3. 多态:是将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。 new、delete、malloc、free关系 malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符,new会调用对象的构造函数,delete会调用对象的析构函数。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用malloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。因此C++语言需要一个能完成动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内存工作的运算符delete。注意new/delete不是库函数。 什么是“引用”?申明和使用“引用”要注意哪些问题? 答:引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同。声明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不能再把该引用名作为其他变量名的别名。声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。不能建立数组的引用。 将“引用”作为函数参数有哪些特点? (1)传递引用给函数与传递指针的效果是一样的。这时,被调函数的形参就成为原来主调函数中的实参变量或对象的一个别名来使用,所以在被调函数中对形参变量的操作就是对其相应的目标对象(在主调函数中)的操作。 (2)使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直接对实参操作;而使用一般变量传递函数的参数,当发生函数调用时,需要给形参分配存储单元,形参变量是实参变量的副本;如果传递的是对象,还将调用拷贝构造函数。因此,当参数传递的数据较大时,用引用比用一般变量传递参数的效率和所占空间都好。 (3)使用指针作为函数的参数虽然也能达到与使用引用的效果,但是,在被调函数中同样要给形参分配存储单元,且需要重复使用"*指针变量名"的形式进行运算,这很容易产生错误且程序的阅读性较差;另一方面,在主调函数的调用点处,必须用变量的地址作为实

相关文档
相关文档 最新文档