xCode8开始NSLog打印不全

1、关于这个问题,网络上已有很多解释了。就是使用定义NSLog的宏定义,并使用printf来代替。

2、在这里就不多说了,此处只记录一个问题,就是使用可变参时的打印办法:

void ECNetLog(NSString *format, ...)
{
#ifdef DEBUG
    if (![ECNetworkConfig sharedConfigInstance].debugEnabled) {
        return;
    }
    NSLog(@"\n\n==========*- 网络日志-开始 -*==========\n");
    va_list argptr;
    va_start(argptr, format);
    NSString *str = [[NSString alloc] initWithFormat:format arguments:argptr];
//    vprintf([format UTF8String], argptr); // 会把%@等打印出来
//    NSLogv(format, argptr); // xcode8开始的bug,打印字数受限1024
    va_end(argptr);
    printf("%s\n\n",str.UTF8String);
    NSLog(@"\n==========*- 网络日志-结束 -*==========\n\n");
#endif
}

你可能感兴趣的:(xCode8开始NSLog打印不全)