六.__FILE__ , __LINE__ 与调试日志】的更多相关文章

很多人可能不知道,C\C++编译器提供了一套针对代码文件的宏定义,它们能够帮助开发者更好的定位代码的BUG. __FILE__ 该宏定义是一个字符串,存储着当前代码文件的完整路径 __LINE__ 该宏定义是一个int型变量,表示当前所在的代码行数 以下代码能够帮助理解: #include <stdio.h> #include <string.h> #include <stdlib.h> int main(int argc,char *argv[]) { printf(…
root@xuanfei-desktop:~/cpropram/2# cat global.h //头文件#ifndef CLOBAL_H        #define GLOBAL_H        #include <stdio.h>        int funca(void);        int funcb(void);#endifroot@xuanfei-desktop:~/cpropram/2# cat funca.c //函数a#include "global.h&…
转:http://www.cnitblog.com/zouzheng/archive/2007/08/31/32691.aspx 先看下简单的初始代码:注意其编译运行后的结果. root@xuanfei-desktop:~/cpropram/2# cat global.h //头文件#ifndef CLOBAL_H        #define GLOBAL_H        #include <stdio.h>        int funca(void);        int funcb…
__VA_ARGS__  是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持).宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉的作用,否则会编译出错 __FILE__  %s   宏在预编译时会替换成当前的源文件名,当前源代码文件全路径 __FUNCTION__宏在预编译时会替换成当前的函数名称 __func__%s 当前函数签名 __LINE__ %d 在源代码文件中当前所在行数,宏在…
一.简单介绍 近期因调试code时,想了解程序的流程,但苦于没有一个简易的日志记录,不停使用qDebug打印输出,而终于提交代码时得去多次删除信息打印,有时还会出现新改动的代码分不清是哪些部分.而使用#ifdef _DEBUG又比較烦这套,因此写了些简单的日志,方便排除问题,临时不能用于多线程中,以后须要再补充. 二.具体解释 1.追踪函数 #ifdef _DEBUG_PRINT #define DEBUGPRINT DEBUGInfo printinfo(__FILE__, __LINE__,…
__FILE__,__LINE__,FUNCTION__实现代码跟踪调试 ( linux 下c语言编程 ) 先看下简单的初始代码:注意其编译运行后的结果. root@xuanfei-desktop:~/cpropram/2# cat global.h //头文件 #ifndef CLOBAL_H #define GLOBAL_H #include int funca(void); int funcb(void); #endif root@xuanfei-desktop:~/cpropram/2#…
一边情况下,C/C++编译器会内置几个宏,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息. ANSI C标准中有几个标准预定义宏(也是常用的): __LINE__:在源代码中插入当前源代码行号: __FILE__:在源文件中插入当前源文件名: __DATE__:在源文件中插入当前的编译日期 __TIME__:在源文件中插入当前编译时间: __STDC__:当要求程序严格遵循ANSI C标准时该标识被赋值为1: __cplusplus:当编写C++…
在C语言里,__FILE__和__LINE__给调试提供了很大的方便,今晚在写PYTHON的时候想到,PYTHON是否有类似的功能实现呢? GOOGLE一番发现两个方法,试验一下下面这句:print "here is :",__file__,sys._getframe().f_lineno 它和C中的两个宏的功能一样了!但根据找个网页http://nedbatchelder.com/blog/200410.html#e20041003T074926sys._getframe().f_l…
<Visual C++ 2010入门教程>系列六:VC2010常见调试技术   犹豫了好久,最终还是决定开始这一章,因为我不清楚到底有没有必要写这样的一章,是应该在这里说明一些简单的调试方法,还是干脆直接让大家去看<Visual C++ 2005入门经典>的第10章,因为那里已经说出了我们几乎所有的常见调试方法. 另外一点就是这一章也许会是<Visual C++ 2010入门教程>系列的最后一章了,因为在入门的这方面,我已经找不到值得和大家分享的经验了,算是黔驴技穷了吧…
paip.提升效率--调试--日志系统日志参数含义---python #同时向控制台和文件输出日志 #日志参数含义 import logging log_format = '%(filename)s [%(asctime)s] [%(levelname)s] %(message)s'   logfile="c:\pythonlog_en2ati.log" logging.basicConfig(filename=logfile, format=log_format,datefmt='%…
本文演示了C语言中预定义符 __FILE__, __LINE__, __FUNCTION__, __DATE__, __TIME__ 的使用. 这几个预定义符的名称就没必要再介绍了,顾名思义嘛. // 演示 __FILE__, __LINE__, __FUNCTION__, __DATE__, __TIME__ 的使用 #include "stdio.h" void testFunc(void){ printf("File = %s\nLine = %d\nFunc=%s\n…
还是本着学习的目的,实现一个自己的调试日志,界面很简单,就是将调试信息显示在页面的正中央,用一个ul包裹,每条信息就是一个li. 1.新建一个myLogger.js文件,将需要的方法声明一下.其中var声明的是私有成员,可见范围只在构造函数中,每个实例都会保存一套他们的副本.this声明的是特权方法,new的时候会把它绑定到实例上,实例可以直接调用它.在prototype上声明的就是公有方法了,每个实例都可以访问它.最后将一个实例赋值给Lily这个库,Lily就有自己的日志插件了. functi…
直接上代码: package com.example.callstatus; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; import java.io.StringWriter; import java.net.UnknownHostException; import java.text.SimpleDateFormat; impor…
Arcgis Runtime 100.3开发实例源代码调试日志 路径: "D:\arcgis runtime1003\arcgis-runtime-samples-dotnet-master\src\WPF\ArcGISRuntime.WPF.Viewer.sln"   问题1: D:\arcgis runtime1003\arcgis-runtime-samples-dotnet-master\arcgis-runtime-samples-dotnet-master\src\WPF\…
大家在新建一个用户跟踪标记的时候可能会遇到以下报错:调试日志已经超过了上限,在编辑跟踪标志前,删除一些调试日志.但是在点击“全部删除”按钮删除所有可见的日志后,还是报同样的错误,这时候,我们打开开发者控制台,会发现弹出如下提示框. 那么如何删除系统中的调试日志呢?只需要在控制台的Query Editor中输入如下查询语句:Select Id from apexlog,然后点击下方的Execute按钮,这时候会查询出系统中存在的所有调试日志,然后选中所有的记录,再点击Delete Rows按钮,就…
为启动一个调试日志,nginx需要在构建时配置城支持调试模式. ./configure --with-debug ... 而且调试级别应该使用err_log指令来设置: err_log /path/to/log debug; nginx的二进制windows版本通常在构建时已经支持调试日志,因此只需要设置调试级别就足够了. 注意:重新定义日志而不指明调试级别将使调试日志失效.下面的例子,重新定义了一个服务器的日志导致该服务器上调试日志失效. error_log /path/to/log debu…
SELECT   * FROM dba_source t WHERE t.TEXT LIKE '%PO_PDOI_TAX_CALCULATION_ERR%' FND:启用调试日志 FND:调试日志级别  …
--自己封装一个Debug调试日志 Debug={} Info={} local function writeMsgToFile(filepath,msg) end function Debug.Log(...) local arg={...} local msg="["..os.date("%Y-%m-%d %X",os.time()).." debug]"--这里时间格式下面将附上,不要都大写了 for k,v in pairs(arg) d…
我是不喜欢用类似VC下的F5,F10.曾经很喜欢用.被代码逻辑逼的没招了.所以不喜欢用了. 比如,错误是根据动态数据,产生的行为错误,无论是该写的未写,还是不该写的写了.指针跑飞什么等等,无非就是上述两个错导致.但要找到具体原因,F5,F10根本不够.所以索引不用了. 这里介绍一下我现在的方法.不过注明这不是LOG. 一个头文件.大体如下: #ifndef _debug_H_ #define _debug_H_ #include <stdlib.h> #include <stdio.h&…
个人总结:读完这篇文章需要5分钟,讲解了debug模块的使用 摘选自网络 前言 在node程序开发中时,经常需要打印调试日志.用的比较多的是debug模块,比如express框架中就用到了.下文简单举几个例子进行说明.文中相关代码示例,可在这里找到. 备注:node在0.11.3版本也加入了util.debuglog()用于打印调试日志,使用方法跟debug模块大同小异. 基础例子 首先,安装debug模块. npm install debug 使用很简单,运行node程序时,加上DEBUG=a…
WCF调试,打不了断点or远程调试时,在配置文件的<configuration>结点下面加一段,就可以在对应位置查看服务器调试日志了,远程调试完毕发送亦可! <system.diagnostics> <sources> <source name="System.ServiceModel" switchValue="Warning" propagateActivity="true"> <list…
JMeter-调试日志记录 参考文档:https://jmeter.apache.org/usermanual/hints_and_tips.html 大多数测试元素包括调试日志记录. 如果从GUI运行测试计划,请选择测试元素,然后使用“Help”菜单 Enable  logging or Disable logging记录. 帮助菜单还具有显示GUI和测试元素类名称的选项. 您可以使用它们来确定更改日志记录级别的正确属性设置. 有时,查看日志消息来调试动态脚本语言(如JMeter中使用的Bea…
JDK1.5新特性: 1.自动拆装箱. 2.泛型 3.可变参数 4.静态导入 5.增强for循环 6.互斥锁 7.枚举 8.注解 JDK1.6新特性: 1.Desktop类和SystemTray类 2.使用JAXB2来实现对象与XML之间的映射 3.StAX 4.使用Compiler API 5.轻量级Http Server API 6.插入式注解处理API(Pluggable Annotation Processing API) 7.用Console开发控制台程序 8.对脚本语言的支持 9.C…
最近项目出现点小Bug,需要调试跟踪代码,于是乎写了份打印日志的代码. CLogFile.h文件 #if !defined(AFX_LOGFILE_H__288388CA_9A3E_4F3D_A2B8_F1078E1F6A6B__INCLUDED_) #define AFX_LOGFILE_H__288388CA_9A3E_4F3D_A2B8_F1078E1F6A6B__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER >…
debug是一款控制日志输出的库,可以在开发调试环境下打开日志输出,生产环境下关闭日志输出.这样比console.log方便多了,console.log只有注释掉才能不输出. debug库还可以根据debug变量选择输出的日志.具体应用如下: 项目中安装debug库: npm install debug 项目中引用debug库:var debug=require("debug"); 项目中为debug添加环境变量 示例:如下: var debug=require("debug…
用qt开发商业程序已经九年了,陆陆续续开发过至少几十个程序,除了一些算不算项目的小工具外,大部分的程序都需要有个日志的输出功能,希望可以将程序的运行状态存储到文本文件或者数据库或者做其他处理等,qt对这个日志输出也做了很好的封装,在Qt4是qInstallMsgHandler,Qt5里边是qInstallMessageHandler,有了这个神器,只要在你的项目中所有qdebug qinfo等输出的日志信息,都会重定向接收到,网上大部分人写的demo都是接收到输出打印日志存储到文本文件,其实这就…
一行解决写入日志: file_put_contents("/tmp/jack.txt", var_export($layReturnArr,TRUE),FILE_APPEND); file_put_contents("/tmp/jack.txt", var_export($layReturnArr,TRUE),FILE_APPEND); 一行完成Curl的POST输出: echo "curl -d\"".http_build_query…
接口列表 核心文件ngx_log.h 主要接口如下: ngx_log_error(level, log, err, fmt, ...) ngx_log_debug(level, log, err, fmt, ...) ngx_log_debug0(level, log, err, fmt) ngx_log_debug1(level, log, err, fmt, arg1) ngx_log_debug2(level, log, err, fmt, arg1, arg2) ngx_log_debu…
序言 本章文章进入深入了解RabbiMQ,平时项目中我们经常用到记录日志,常见的不外乎:Info.debug.warn.Error.     情境进入:先简单说一下我们需求,我们开发过程中会遇到很多日志记录,每种日志正常我们会放在不同时的文件夹(当然有的也可以合并,具体问题具体分析),现在我们就记录不同的日志,然后根据不同的类型,进行查找日志记录. 100个数内,实现1(Info) .2(debug).3(warn).4(Error)       5(Info) .6(debug).7(warn…
C/C++ 有5个常用的预定义宏,可以当作变量直接使用 __FILE__,__FUNCTION __,__LINE__,__DATE__,__TIME__. 注意是两个下划线. 其含义如下: __FILE__:                文件的路径和名称 __FUNCTION __:    函数名 __LINE__:               行数 __DATE__:              文件的编译日期 __TIME__:               文件的编译时间 用法: 添加在你…