标准c语言笔试题精华(完结版).doc

标准c语言笔试题精华(完结版).doc

ID:55709199

大小:400.50 KB

页数:70页

时间:2020-05-26

标准c语言笔试题精华(完结版).doc_第1页
标准c语言笔试题精华(完结版).doc_第2页
标准c语言笔试题精华(完结版).doc_第3页
标准c语言笔试题精华(完结版).doc_第4页
标准c语言笔试题精华(完结版).doc_第5页
资源描述:

《标准c语言笔试题精华(完结版).doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、C试题讲解问答题部分:(面试中问到的内容)1.局部变量能否和全局变量重名?(华为)解析:能,局部会屏蔽全局。要用全局变量,需要使用"::" 局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量.比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。3.如何引用一个已经定义过的全局变量?(华为)解析:extern 可以用引用头文件的方式,也可以用extern关键字,如果用引

2、用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个编写错了,那么在编译期间会报错,如果你用extern方式引用时,假定你犯了同样的错误,那么在编译期间不会报错,而在连接期间报错。4.static全局变量与普通的全局变量有什么区别?解析:1) 全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式从以上分析可以看出, static全局变量与普通的全局变量有什么区别: static全局变量只初使化一次,防止在其他

3、文件单元中被引用; static局部变量和普通局部变量有什么区别: static局部变量只被初始化一次,下一次依据上一次结果值; static函数与普通函数有什么区别: static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝3.进程和线程的差别(微软亚洲)解析:答:线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 (2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行 (3)

4、拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4)系统开销:在创建或撤消进程时,由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤消线程时的开销4.用宏定义写出swap(x,y)(思科)解析:#define swap(x, y) x = x + y; y = x - y; x = x - y5.什么是预编译,何时需要预编译:(思科)解析:就是指程序执行前的一些预处理工作,主要指#表示的. 何时需要预编译? 1)、总是使用不经常改动的大型代码体。 2

5、)、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。6.下述三个有什么区别?char*constp;charconst*p,constchar*p;(慧通)解:constchar*p和charconst*p修饰的是p所指向的变量,不可以用*p=’a’等这样的方式修改变量区的内容.指针本身是可以修改的,比如说charx,y;const*p=&x,p=&y,修改指针本身是可以的,*p=‘b’就不行。Char*constp;中con

6、st修饰的是指针,表明指针在操作过程中不可以修改,而指针所指向的内容是可以修改的,比如说charx,y;char*constp=&x;*p=‘b’是可以的,但p=&y;是不可以的,const修饰的是指针,不可以修改指针的指向,只可以修改指针所捆绑的变量3.int(*s[10])(int)表示的是什么啊?(慧通)解析:这样的表达式可以遵循这样的规则:从右向左,由近及远,括号优先;比如:从a符号开始。其右边是[10],说明a是个数组,其中存了十个元素。再看a的左边是一个*。说明数组中存的是指针。现在在看(

7、*a[10])的右边是(int);说明所存的指针是指向有一个int形参的函数现在看(*a[10])的左边是个int,说明指向的函数的返回值为int类型;4.进程之间通信的途径,进程间通信方法(慧通)解析:无名管道,命名管道,消息队列,信号,共享内存,套接字。等5.什么是“引用”?申明和使用“引用”要注意哪些问题?解析:引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同。申明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名称,即该目标原名

8、称和引用名,不能再把该引用名作为其他变量名的别名。声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。不能建立数组的引用12.include和include“filename.h”的区别?解析:<>是从标准库路径搜索,“”是从用户当前工作目录开始,找不到,在到标准库开始13.Heap和Stack的区别?解析:Heap是堆,Stac

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

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

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