最新C语言面试题.doc
《最新C语言面试题.doc》由会员分享,可在线阅读,更多相关《最新C语言面试题.doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateC语言面试题C语言面试题一、 C语言面试题:1、 问:在嵌入式开发中,为什么能通过C语言直接操作硬件?答:因为C有指针,它是C语言的灵魂,它可以直接访问内存。2、 问:链表的作用?(这是上一个问题的延申,学员一般会举一堆例子来说明它的作用,但这都不是重点,没有抓住主要矛盾)答:链表用于内存管理,链表节点中的指针域可以将不连续的内存彼此关联起来,实现内存的动态管理。3、
2、 问:什么变量不能用指针指向?答:寄存器变量(register 修饰),因为这个变量会优先选择存放到CPU寄存器中,而指针只能指向内存的任务区域,但不能指向寄存器。4、 问:有符号字符型和无符号字符型变量的最大值和最小值分别是多少(十六进制多少),为什么? 答:有符号(-128127,-0X800X7F),无符号(0-255,0X000XFF)。5、 问:林锐面试题中四个有关内存操作的问题:第一题、运行会出现段错误(崩溃):答:因为参数是值传递,所以主调函数中的str指针已然指向空,不能向里面拷数据,除非加上取地址,采用二维指针接收才能传递动态内存; 第二题:乱码:答:实际上可能是乱码,也可能
3、显示出一部分内容,显示乱码是因为刚才那段栈内存空间全部被覆盖,如果未完全覆盖则显示一部分内容;第三题:能够输出hello答:但由于没有在同一层释放内存,容易导致内存泄露;第四题:对已经释放的内存进行操作答:会破坏其它有用数据,后果难以预料,通常提示出现段错误。6、 问:哪些地方可以用到const?const变量和函数输入参数用const修饰有哪些作用?答:1、定义常量(1) const修饰变量,const TYPE ValueName=value;value是不可变的。(2) 将const 改为外部链接,作用于扩大至全局,编译时分配内存,并且可以不进行初始化,仅仅作为声明,编译器认为在在程序其
4、他地方进行了定义;Extend const int ValueName = value; 2、指针使用CONST (1)指针本身是常量不可变 (char *)const pContent; Const (char*)pContent;(2)指针指向的内容是常量不可变 Const char *pContent; Char const *pContent;(3)两者都不可变 Const char *const pConten 3、函数中使用CONST(1)const修饰函数的参数a 传递过来的参数在函数内不可以改变; void function(const int var); b 参数指针所指内容
5、为常量不可变; void function(const char *Var); c 参数本身为常量不可变; void function(char *const Var);二、 系统编程1、问:什么是程序?什么是进程?本质区别?答:程序是存放在磁盘上一些指令的有序集合;进程是程序执行的实例,是个动态的过程;本质区别:程序是静态的,进程是动态的。2、问:无名管道为什么只能在具有公共祖先的进程间通信?管道的特点? 答:因为无名管道没有名字,没法通过open的方法打开,进程只能通过继承的方法获取管道文件描述符。 管道的特点:1、 半双工,数据在同一时刻只能在一个方向上流动。2、 只能在具有公共祖先的进
6、程之间使用,通常用在父子管道之间。3、 管道对于管道两端的进程而言,就是一个文件,但他不是普通的文件,不属于某个文件系统,并且只存在于内存中。4、 数据从管道的一端写入,从另一端读出。5、 没有名字。6、 管道的缓冲区是有限的。7、 管道所传送的数据是无格式的,这要求管道的读出方与写入方必须事先约定好数据的格式,如多少字节算一个消息等。8、 写入管道的数据读完以后就从管道中消失。 3、问:管道与消息队列的区别? 答:管道与无名管道收发数据都是先进先出的,消息队列可以实现按消息的类型随机读取。 4、问:select()函数的作用? 答:用于一个进程同时监听多个文件描述符,还可以设置监听超时时间。
7、 5、问:有名管道相比无名管道最大的优点是什么? 答:可以实现毫无干系的进程间通信。6、问:什么是信号量,有什么特点,简述PV操作? 答:信号量就是个计数器,计数器的值只能是非负的。 操作计数器的方法是PV操作,PV操作具有原子性(不可中断),要执行就一定要执行成功,要么就不执行。 P 操作使信号量的值减一 当进行带堵塞的P操作的时候,如果信号量的值已经是0了,P操作就会堵塞。 V 操作使得信号量的值加一 7、问:什么是进程、什么是线程,它们之间的关系?实现多任务的优缺点? 答:进程是系统资源分配的最小单位,线程是CPU调度和分配的最小单位;每个进程都拥有自己独立的系统资源,而线程基本上没有自
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 语言 试题
限制150内