static void(*orig_nslog) (NSString *format,...); 这里声明的时候是*号不是&号,声明是一个对象,估计老师那边打错了
还有下面这段代码
va_list va;
va_start(va,format);
NSLogv(format, va);
va_end(va);
可以换成orig_nslog(format) ,这时候我们的orig_nslog就是原来NSLog在Mach-o中的地址了,这时候可以直接拦截使用了,老师希望课里面代码可以检查仔细点再发出来,好多次直接报错,然后又找不到原因,这样挺打击人的。。。还有注释可以再清楚点
展开