第⼀一部分C语⾔言⾯面试试题选集71.inta=-45;a的⼆二进制值是?⼋八进制?72.堆和栈的区别?73.请简述⽂文字编码:gb2312.Unicode.utf-8的编码⽅方式?74.static关键字的作⽤用?85.解释下列变量a的定义?86.以下程序输出的结果是什么?87.找出下三段代码的错误:98.写⼀一算法进⾏行排序。排序数字为{9,6,3,5,8,7}109.有⼀一块⽊木头,⻓长30⽶米,短的⼀一截是⻓长的⼀一截的3/5,⻓长的⼀一截有多少⽶米?1010.选择题1011.链表与数组的区别10第⼆二部分Objective-C与UI⾯面试试题选集111.类别和类扩展的区别?112.Objective-C的类可以多重继承吗?可以实现多个接⼝口吗?category是什么?113.Objective-C属性特性(assign,retain,copy,readonly,readwrite,atonmic,nonatomic)114.⾃自动释放池是什么,如何⼯工作?125.写代码,完成下列内容126.Object-C如何对内存管理的,说说你的看法和解决办法?ARC和None-ARC的内存管理的区别在哪⾥里?127.介绍⼀一下协议与类别138.委托(代理)有什么作⽤用?代理怎么实现,请简单代码举例?139.描述⼀一个你遇到过得retaincycle例⼦子1310.#import和#include的区别@class?1411.使⽤用self.name=@“object”;和_name=@“object”有什么不同吗?1412.请简述self.name=nil的机制,以及与[_namerelease]的区别?1413.协议标准宏MIN,这个宏输⼊入两个参数并返回较⼩小的⼀一个1414.线程与进程的区别和联系?1515.请解释⼀一下iOS应⽤用的沙盒机制?1516.Objective-C中的数字对象有哪些,简述他们与基本数据类型的区别?1517.Swift和Object-C分别是什么?两者⽐比有什么不同之处,⼜又有何联系?1618.类的定义及声明⽂文件以什么为后缀名?1619.iOSUI的图像存储类型是什么?1620.这段代码有什么问题?1621.什么时候⽤用NSMutableArray,什么时候使⽤用NSArray?16 222.同步调⽤用和异步调⽤用分别是什么?1623.NSString和NSMutableString有什么区别?1724.frame和bounds的区别?bounds的⼤大⼩小改变frame改变吗?1725.UIViewController的⽣生命周期⽅方法调⽤用顺序1726.介绍⼀一下你对⾯面向对象概念的理解?1827.重载和覆盖的区别。重载的⽅方法是否可以改变返回值的类型?1828.UIView的圆⾓角属性设置⽅方法1929.请解释以下两种设计模式:⼯工⼚厂模式,单例模式1930.什么是MVC?1931.在.m⽂文件ClassExtension中声明的私有⽅方法,其他类能否调⽤用?若强⾏行调⽤用会发⽣生什么?2032.在调⽤用⽀支付宝接⼝口⽀支付时,partner,seller,private分别是什么意思?2033.谈谈如何在MVC模式中减轻ViewController的重量(减少代码)2034.为什么很多内置的类,如TableViewController的delegate的属性是assign不v是retain?2035.列举⼏几个你曾经⽤用过的第三⽅方库?2036.⽤用宏定义来写出⼀一个判断系统是否是iOS7以上的版本的例⼦子2137.Objective-C的动态性体现在哪些⽅方⾯面2138.下⾯面的代码会造成什么问题2139.ios平台怎么做数据的持久化?coredata和sqlite有⽆无必然联系?coredata是⼀一个关系型数据库吗?2140.多线程中堆与栈分别是共有的还是私有的?(记住)2241.Objective-C声明⼀一个类所有要⽤用到的编译指令是?2242.⽤用预编译指令#define声明⼀一个常数,⽤用以表⽰示1年中有多少秒(忽略闰年问题)2243.解析XML⽂文件有哪⼏几种⽅方式?2244.下⾯面哪个⽅方法不属于NSObject的内省(Introspection)⽅方法2245.iOS开发中,开发证书根据⽤用途划分可以分为哪两⼤大类,分别作⽤用是什么⽤用途?2246.关键字const有什么含义?static的作⽤用?还有extemC的作⽤用?2347.让⼀一个物体从界⾯面中的⼀一点运动到另外⼀一点,有哪些⽅方法?2348.什么是多继承?2349.ViewController的loadView,viewDidLoad,didReceiverMemoryWarning分别是什么时候调⽤用的,在初始化ViewController时在这⼏几个函数中应该做什么⼯工作?2350.对于语句NSString*obj=[[NSDataalloc]init];obj在编译时是和运⾏行时分别是什么对象?2451.什么时候⽤用delegate,什么时候⽤用Notification?2452.浅赋值和深赋值的区别。2453.介绍下KVC和KVO24 354.多线程实现的三种⽅方式2555.谈谈对Block的理解?2556.看下⾯面的程序,第⼀一个NSLog会输出什么?这时str的retainCount是多少?第⼆二个和第三个呢?为什么?2557.写⼀一个单例(任意语⾔言编写)2558.常⻅见的数据持久化⽅方法有哪些?2659.简述tableView的重⽤用机制。2660.实例化⼀一个UITableView对象,要求写出关键语句?2761.描述⼀一下runtime的概念,messagesend如果寻找不到相应的对象,会如何进⾏行后续处理?2762.什么是methodswizzling?(了解)2763.CocoaTouch包含什么?不包含什么?2764.响应链(Responderchain)是什么?它是如何发挥作⽤用的?2865.如何获取项⺫⽬目根路径,并在其下创建⼀一个名称为userData的⺫⽬目录2866.iPhone5,6,6+以及iPadAir2的屏幕分辨率分别是多少?2867.分辨率的计算单位是什么?2868.UIButton的⽗父类是什么?2869.请解释⼀一下InterfaceBulder的作⽤用以及NIB⽂文件的概念2970.选项卡(TabBar)和⼯工具栏(Toolbar)分别是什么?两者之间有何共同点和不同点2971.数据库中索引的作⽤用?和它的优缺点是什么?2972.UIImageView如何响应点击事件?2973.如何实现UIScrollView⽆无限滚动?2974.多线程中,访问同⼀一变量,如何加锁?3075.写⼀一个委托的interface3076.UITableview的执⾏行流程是怎么样的?3177.简述XMPP中有哪些节点,各个节点分别有什么作⽤用?3178.使⽤用AVPlayer播放视频时,视频监听的AVPlayerItem状态有⼏几种,分别是什么及作⽤用?3179.简述使⽤用CLLocationManager定位时,如何停⽌止定位?3180.iOS中有⼏几种消息机制,区别以及各种机制的使⽤用场景(很全⾯面哦)3181.UI布局的⼏几种⽅方式,各种⽅方式的利弊谈谈您的看法3182.你⽤用过NSOperationQueue吗?请描述它和GCD的区别和类似的地⽅方3283.HTTP和Socket的区别?3284.CoreFoundation中提供了哪⼏几种操作Socket的⽅方法?3285.请描述Xcode打包签名机制中Certificates&Identifiers&ProvisioningProfiles三者的关系?3286.iCloud包含了哪些技术与服务?33 487.UITableView需要实现那些代理?请列出UITableVIew代理中必须实现的与其他⼀一些常⽤用函数?3388.Objective-c有私有⽅方法没,有私有变量吗?3389.UITableView重新加载数据有⼏几种⽅方式?那种更好?如何对UITableView优化?3490.Appcrash后,有哪些调试⽅方法?3491.谈谈你对NSRunLoop的理解;3492.⾃自动布局(Autolayout)的作⽤用是什么?请概括⼀一下它是如何运⾏行的;3593.UILabel是否可以显⽰示html⽂文本,如果可以怎么显⽰示?3594.如果现在需要让UILabel进⾏行交互,(可以点击响应事件),有哪些⽅方式?3595.数据库中有三张表3696.举例说明如何在多台机器上共享开发证书3697.举例说明,当需要将⼀一个从未配置的过签名的APP发布到APPStore上时,配置签名过程。3698.如何设计⼀一个可变⾼高度(根据内容适应⾼高度)的UITableViewCell?3699.⼀一瓶啤酒⼀一块钱,两瓶空瓶⼦子可以换⼀一瓶啤酒,现在你有20块钱,问你总共能喝多少瓶啤酒?37100.UIView与CLayer有什么区别?37101.Whatispushnotification?(什么是推送通知)37102.WhatisPolymorphism?38103.WhatisSingleton?38104.Whatisresponderchain?38105.Differencebetweenframeandbounds?38106.Differencebetweenmethodandselector?38107.IsthereanygarbagecollectionmechanisminObjective-C?38108.WhatisNSOperationqueue?38109.Whatislazyloading?39110.Canweusetwotableviewcontrollersononeviewcontroller?39111.Whatisblock?Pleasewriteasimpleexampletoblock;39 5第⼀一部分C语⾔言⾯面试试题选集1.inta=-45;a的⼆二进制值是?⼋八进制?答:⼆二进制:-101101⼋八进制:-552.堆和栈的区别?答:a.堆栈空间分配区别:栈:由操作系统⾃自动分配释放,存放函数的参数值,局部变量的值等。其操作⽅方式类似于数据结构中的栈,先进后出。堆:⼀一般由开发⼈人员分配释放,若开发⼈人员不释放,程序结束时由系统回收,分配⽅方式类似于链表,堆区⽤用来开辟的空间和回收空间的操作分别是malloc和free。b.内存分配和读取效率区别:栈:栈由系统⾃自动分配,速度快,但是程序员⽆无法控制。堆:堆是由程序员⾃自⼰己分配,速度较慢,容易产⽣生碎⽚片,不过⽤用起来⽅方便,⾮非常灵活。c.申请⼤大⼩小不同:栈:栈是向低地址扩展的数据结构,是⼀一块连续的内存区域,栈顶的地址和栈的最⼤大容量是系统预先规定好的,能从栈获得的空间较⼩小。堆:堆是向⾼高地址扩展的数据结构,是不连续的内存区域,这是由于系统是由链表在存储空闲内存地址,⾃自然堆就是不连续的内存区域,且链表的遍历也是从低地址向⾼高地址遍历的,堆得⼤大⼩小受限于计算机系统的有效虚拟内存空间,由此空间,堆获得的空间⽐比较灵活,也⽐比较⼤大。3.请简述⽂文字编码:gb2312.Unicode.utf-8的编码⽅方式?答:GB2312:编码适⽤用于汉字处理、汉字通信等系统之间的信息交换,通⾏行于中国⼤大陆;新加坡等地也采⽤用此编码。中国⼤大陆⼏几乎所有的中⽂文系统和国际化的软件都⽀支持GB2312。Unicode(统⼀一码、万国码、单⼀一码)是⼀一种在计算机上使⽤用的字符编码。Unicode是为了解决传统的字符编码⽅方案的局限⽽而产⽣生的,它为每种语⾔言中的每个字符设定了统⼀一并且唯⼀一的⼆二进制编码,以满⾜足跨语⾔言、跨平台进⾏行⽂文本转换、处理的要求。UTF-8(8-bitUnicodeTransformationF