debug log

    程序的后台日志能让你迅速找到错误,用c预定义函数可以方便的打印log日志。

__DATE__            返回const char*,格式为:“Mmm dd yyyy”,如May 27 2006
__FILE__              返回const char*,为当前源代码文件名的 详细路径,如/vault/git/AOI/AOIFixture/CAOIFixture.mm
__LINE__              返回int,为当前源代码中的行号的整数常量
__TIME__             返回const char*,为源文件编译时间,格式为“hh:mm:ss”,如:09:11:10;
__FUNCTION__   返回const char*,为当前所在的函数名

__func__               同__FUNCTION__,在编译器的较高版本中支持

<span style="font-size:18px;">SaveDebug(logmsg,__func__,__LINE__);
在关键位置调用函数即可打印log日志,十分方便。

void SaveDebug(char *msg,const char *str,int line){
    //NSLog([NSString stringWithFormat:@"%s\n",msg]);
    printf("%s\n",msg);

    NSDate *date=[NSDate date];
    NSCalendar *cal=[NSCalendar currentCalendar];
    unsigned int unitflags=NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit|NSSecondCalendarUnit;
    NSDateComponents *d=[cal components:unitflags fromDate:date];
    int year=[d year];
    int month=[d month];
    int day=[d day];
    int hour=[d hour];
    int minute=[d minute];
    int second=[d second];
    char tmp[strlen(msg)+50];
    char filepath[255];

    sprintf(tmp, "%02d.%02d:%02d %s:%d %s\n",hour,minute,second,str,line,msg);
    //sprintf(tmp,"%s %s %s~%d %s\n",__DATE__,__TIME__,str,line,msg);
    sprintf(filepath, "/vault/AOI_HALCON/debugfile.%d.%02d.%02d.txt",year,month,day);
    //sprintf(filepath,"/vault/AOI_HALCON/debugfile_%s.txt</span><span style="font-size:18px;">",__DATE__);

    ofstream dbf(filepath,ios_base::out|ios_base::app);
    dbf.write(tmp, strlen(tmp));
    dbf.close();
}</span>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值