省略nslog打印】的更多相关文章

//#if #endif宏定义的意思就是如果定义了DEBUG,那么就使用NSLog输出:否则这段代码直接忽略.有人会疑问这个DEBUG和_DEBUG来自哪里,这个其实不用担心,这个来自于Xcode的默认设置,可以取消DEBUG模式,开启RELEASE发布模式 //选择Product->Scheme->Edit Scheme, #if defined(DEBUG)||defined(_DEBUG) NSLog(@"测试代码"); NSLog(@"Test Codin…
在iOS开发过程中,调试是很重要的过程,而除了各种断点调试(普通断点.条件断点.全局断点)之外,似乎NSLog是我们调试最常用的方法,当然,也是最简单朴素的寻debug方法. 在项目中,我们常使用的NSLog的语句无外乎以下一种: NSLog(@"打印字符串:%@",name); NSLog(@"打印整形:%i",number);//或者 %li ; %ld ; %d NSLog(@"打印字符:%c",c); NSLog(@"打印单浮点…
iOS中忽略NSLog打印信息 解决办法: 1.新建PrefixHeader_pch文件,在该文件中定义一下宏 //通过DEBUG宏的定义来解决Debug状态下和Release状态下的输出 #ifdef DEBUG #define NSLog(...) NSLog(__VA_ARGS__) #else #define NSLog(...) #endif /* PrefixHeader_pch */ 2.找到程序Build Settings 搜索 Prefix Header,然后在Prefix H…
Xcode真机调试iOS10中Nslog 打印不出东西 解决方案 通过以下途径找到 Product->Scheme->EditScheme ios9以前的 如果不加 1 的那句 在xcode8 会打印一些没用的日志 但是你的系统要是ios10 如果真机调试 加了这句就不会打印 要是删除了就能可以打印了, 解决办法: 第一步: 如图 1 中取消勾选 第二步: 如图2 close 即可…
因为NSLog的输出还是比较消耗系统资源的,而且输出的数据也可能会暴露出App里的保密数据,所以发布正式版时需要把这些输出全部屏蔽掉. 我们可以在发布版本前先把所有NSLog语句注释掉,等以后要调试时,再取消这些注释,这实在是一件无趣而耗时的事!还好,还有更优雅的解决方法,就是在 项目的prefix.pch文件里加入下面一段代码,加入后,NSLog就只在Debug下有输出,Release下不输出了. 如何实现: 在-Prefix.pch(pch 全称是“precompiled header”,也…
解决方案:自定义宏,通过fprintf函数打印log,完美解决! #ifdef DEBUG #define NSLog(FORMAT, ...) fprintf(stderr, "%s:%zd\t%s\n", [[[NSString stringWithUTF8String: __FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat: FORMAT, ## __VA_ARGS__] U…
这个问题以前没在意,刚偶然打印,发现有些问题,上网查了下,发现是这么搞的: NSLog(@"%@", isEqual?@"YES":@"NO"); 也可以这样: NSLog(@"%d", [currentThread isMainThread]?YES:NO); 若为 YES, 输出为1:否则为0.…
#ifdef DEBUG #define NSLog(FORMAT, ...) fprintf(stderr, "%s:%zd\t%s\n", [[[NSString stringWithUTF8String: __FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat: FORMAT, ## __VA_ARGS__] UTF8String]); #else #define NSLog(…
#if DEBUG #warning NSLogs will be shown #else #define NSLog(...) {} #endif…
输出BOOL值的方法:NSLog(@"%@",YES?@"YES":@"NO");%@输出字符串. NSLog(@"ifReadOnly value: %@" ,ifReadOnly?@"YES":@"NO");…