ios 打印日志注意的点

1.常用的打印格式化字符
%@ 对象

%d,%i 整型 (%i的老写法)

%hd 短整型

%ld , %lld 长整型

%u 无符整型

%f 浮点型和double型

%0.2f 精度浮点数,只保留两位小数

%o 八进制

%zu size_t

%p 指针地址

%e float/double (科学计算)

%g float/double (科学技术法)

%x: 为32位的无符号整型数(unsigned int),打印使用数字0-9的十六进制,小写a-f;

%X: 为32位的无符号整型数(unsigned int),打印使用数字0-9的十六进制,大写A-F;

%s char * 字符串

%.*s Pascal字符串

%c char 字符

%C unichar

%Lf 64位double

%lu sizeof(i)内存中所占字节数

2.在debug的情况 执行打印日志 其他模式不打印(release 和 Distribution)

ifndef OPTIMIZE

define NSLog(...) NSLog(VA_ARGS)

else

define NSLog(...){}

endif

release模式通常会定义 OPTIMIZE,debug模式不会。
可以把这段宏定义放到一个专门注意宏的头文件。

原文地址:https://www.cnblogs.com/li-jing-jing/p/10852750.html

时间: 2024-08-14 05:13:57

ios 打印日志注意的点的相关文章

iOS 打印日志的保存 (一)

当我们真机调试app的时候,作为开发人员的我们可以很方便的通过Xcode的debug area查看相关的打印信息.而测试人员在对app进行测试的时候,一旦出现了crash,这时我们就需要把相关的打印信息保存下来, 以便后面进行查看追踪crash原因.在这里我们可以将打印信息写入沙盒系统中.不多说了,直接上代码. 1 - (void)redirectNSlogToDocumentFolder 2 { 3 if (isatty(STDOUT_FILENO)) 4 { 5 NSLog(@"真机调试,无

iOS开发- 日志打印(常见)

Q:如何打印当前的函数和行号? A:我们可以在打印时使用一些预编译宏作为打印参数,来打印当前的函数和行号.如: NSLog(@"%s:%d obj=%@", __func__, __LINE__, obj); NSLog(@"%s:%d obj=%@", __func__, __LINE__, self); //输出样式: //2015-01-06 17:13:17.852 justTest[15079:613] // -[ViewController viewDi

常用获取Android崩溃日志和IOS崩溃日志的几种方法

一:前言 在日常测试app时,经常会遇到崩溃问题,测试快速抓取到崩溃日志可以有效方便开发进行定位,快速解决问题所在测试做到测试分析,定位是非常重要的,这也是判断一个测试能力指标的一大维度. 二:Android崩溃日志 一.通过adb logcat获取 # 清除日志,新手上路时,日志内容很多,对于能毕现的日志,可以先清除后重新获取 adb logcat -c # 然后再次运行崩溃操作,再抓取日志 # 存储日志到当前目录下的 carsh.log 中 adb logcat -d *:W > crash

使用log4j2打印Log,log4j不能打印日志信息,log4j2不能打印日志信息,log4j和logj2,idea控制台信息乱码(文末)

说来惭愧,今天就写了个"hello world",了解了一下log4j的日志. 本来是想在控制台打印个log信息,也是遇到坎坷重重,开始也没去了解log4j就来使用,log4j配置文件开始用的log4j.properties,结果控制台一直打印ERROR StatusLogger No log4j2 configuration file found.也就是Log4j2配置文件没找到的意思. 我就把log4j.properties文件名改成log4j2.properties,结果不报错了

打印日志编程

C++打印日志编程例子: int iCnt = 0; CString csMsg; CTime curTime; CMyLog mylog; CString csMylog; csMylog.Format("%d:\\CYJ\\ThreadTask%d.log",id); csMsg.Format("%s第%d客户端,第%d轮温循测试开始\r\n",curTime.Format("%Y-%m-%d %H.%M.%S"),id,iCnt); myl

打印日志

=============================================== #最普通的log打印 import logging log_file="/tmp/mylog.log" logging.basicConfig(filename=log_file,level=logging.DEBUG) def fun1(): logging.debug("This is running fun1") if __name__=="__main_

python之打印日志logging

1 import logging 2 3 4 # 简单打印日志举例 5 logging.basicConfig(level=logging.DEBUG) # 设置日志级别,WARN 6 logging.warning('Watch out!') # will print a message to the console 7 logging.info('I told you so') # will not print anything 8 9 10 # 打印日志到文件,注意要新起一个文件,否则不能

根据需要分等级的打印日志(C语言)

在程序遇到问题调试时,有时候需要打印一些中间变量,观察完调试完又需要把这些打印注释掉,感觉很麻烦.所以写了一个小程序,可以设置打印日志等级. 在主程序设置要打印的日志等级debug,就把相应的等级的日志全部打出来观察. 程序用到了va_list(在C语言中解决变参问题的一组宏),相关知识可参考http://www.cnblogs.com/hanyonglu/archive/2011/05/07/2039916.html(注意链接文章正确的程序在评论中) . 直接上主程序:main.cpp 1 #

hive命令行不打印日志

[Author]: kwu hive命令行不打印日志,hive的命令行运行会输出mapreduce的日志,这些日志对大部分用户来说是不需要的. 如何去掉这个日志: hive -S 加上 "-S"  参数即可(-S,--silent ). 版权声明:本文为博主原创文章,未经博主允许不得转载.