TOP

iOS面试题(六)
2019-09-03 02:40:13 】 浏览:258次 本网站的内容取自网络,仅供学习参考之用,绝无侵犯任何人知识产权之意。如有侵犯请您及时与本人取得联系,万分感谢。
Tags:iOS 试题

,并等待request的返回的response,而– initWithRequest:delegate:使用的是异步加载,当其完成网络访问后,会通过delegate回到主线程,并其委托的对象。

83.block的使用

使用实例

使用typed声明block

typedef void(^didFinishBlock) (NSObject *ob);

这就声明了一个didFinishBlock类型的block,

然后便可用

@property (nonatomic,copy) didFinishBlock  finishBlock;

声明一个blokc对象,注意对象属性设置为copy,接到block 参数时,便会自动复制一份。

__block是一种特殊类型,

使用该关键字声明的局部变量,可以被block所改变,并且其在原函数中的值会被改变。

 

84.多线程与block

GCD与Block

使用 dispatch_async 系列方法,可以以指定的方式执行block

GCD编程实例

 

dispatch_async的完整定义

   void dispatch_async(

   dispatch_queue_t queue,

   dispatch_block_t block);

功能:在指定的队列里提交一个异步执行的block,不阻塞当前线程

 

通过queue来控制block执行的线程。主线程执行前文定义的 finishBlock对象

dispatch_async(dispatch_get_main_queue(),^(void){finishBlock();}); 

85.App出现内存泄露时,如何追踪和解决的?

86.编写一段程序,计算数字的总和且打印数字的英文单词,例如12343,计算13,打印“one,two,three,four,three”。接受任意输入。

87.根据下面的定义

float f = 1.00;

short int i = 100;

long int l = 500L;

double d = 15.00;

确定下面的结果值和类型:

f + i;

l / d;

i / l + f;

l * i;

f / 2;

i / (d + f);

l / (i * 2.0);

l + i/(double)l;

88.编写一个名为IS_UPPER_CASE的宏,其作用如果字符是大写字母,就给出非零的值。

89.编写一个程序来替代shell里的ls命令。

90.NSTimer是否是多线程的?使用时是否要加同步锁?

91.一般在哪个函数中创建某个View的子View。

92.Objective C中Category和Extension的区别是什么?

93.运算符的运算等级。

94.写一个单例的实现代码,要求可编译。

95.写一个字符串反转的实现函数

96.写一个委托的interface,写一个代理。略

97.Overload和Override的区别?编译器如何实现这两种规则?

98.将“引用”函数作为参数有哪些特点?什么时候需要“常引用”?

99.C和Obj-C如何混用?

100.cocoa有哪些设计模式?

101.socket编程中如何判断异步connect是否成功?

102.iOS的七层模式?TCP/UDP属于哪一层?TCP/UDP有何优缺点?

103.TCP/IP中端口有何作用?

104.- (NSInteger)v1:(NSInteger)x{

    NSInteger c = 0;

    while (x) {

        x &= x - 1;

        c ++;

    }

    return x;

}

当x = 9999时输出是8.

 

 

PS:自己花时间收集的众多面试题,希望对大家有帮助! 

文章转载自:http://www.pythonheidong.com/blog/article/3327/

请关注公众号获取更多资料


iOS面试题(六) https://www.cppentry.com/bencandy.php?fid=99&id=246396

首页 上一页 3 4 5 6 下一页 尾页 6/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇git找回丢失的代码 下一篇iOS Push详述,了解一下?

评论

验 证 码:
表  情:
内  容: