`
isiqi
  • 浏览: 16453001 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

TRACE()的用法总结

阅读更多

TRACE()宏一般是用在mfc中的,用于将调试信息输出到vs的输出窗口中(这是关键), 这在使用vs作为开发工具的时候,是非常方便的。

然而在开发一般c++程序时,却貌似无法获得这样的便利,其实只要经过几个步骤同样可以实现:

一:#include<atltrace.h> //此头文件包含ATLTRACE宏,而其实MFC做的就是#define TRACE ATLTRACE

二:使用ATLTRACE("error");

三:包含atl链接库:atlsd.lib debug )或者 atls.lib

trace详细教程:

TRACE宏对于VC下程序调试来说是很有用的东西,有着类似printf的功能;该宏仅仅在程序的DEBUG版本中出现,当RELEASE的时候该宏就完全消息了,从而帮助你调式也在RELEASE的时候减少代码量。

使用非常简单,格式如下:

TRACE("DDDDDDDDDDD");

TRACE("wewe%d",333);

同样还存在TRACE0,TRACE1,TRACE2。。。分别对应0,1,2。。个参数

TRACE信息输出到VC IDE环境的输出窗口(该窗口是你编译项目出错提示的哪个窗口),但仅限于你在VC中运行你的DEBUG版本的程序。

TRACE信息还可以使用DEBUGVIEW来捕获到。这种情况下,你不能在VC的IDE环境中运行你的程序,而将BUILD好的DEBUG版本的程序单独运行,这个时候可以在DEBUGVIEW的窗口看到DEBUGVIE格式的输出了。

VC中TRACE的用法有以下四种:

1:

TRACE ,就是不带动态参数输出字符串, 类似C的printf("输出字符串");

2:

TRACE 中的字符串可以带一个参数输出 , 类似C的printf("...%d",变量);

3:

TRACE 可以带两个参数输出,类似C的printf("...%d...%f",变量1,变量2);

4:

TRACE 可以带三个参数输出,类似C的printf("...%d,%d,%d",变量1,变量2,变量3);

TRACE 宏有点象我们以前在C语言中用的Printf函数,使程序在运行过程中输出一些调试信息,使我们能了解程序的一些状态。但有一点不同的是:


TRACE 宏只有在调试状态下才有所输出,而以前用的Printf 函数在任何情况下都有输出。和Printf 函数一样,TRACE函数可以接受多个参数如:

int x = 1;
int y = 16;
float z = 32.0;
TRACE( "This is a TRACE statement\n" );
TRACE( "The value of x is %d\n", x );
TRACE( "x = %d and y = %d\n", x, y );
TRACE( "x = %d and y = %x and z = %f\n", x, y, z );

要注意的是TRACE宏只对Debug 版本的工程产生作用,在Release 版本的工程中,TRACE宏将被忽略。

分享到:
评论

相关推荐

    android traceview 总结

    使用方法 要使用`Traceview`,首先需要在代码中添加`Debug.startMethodTracing()`和`Debug.stopMethodTracing()`来开启和关闭追踪。运行应用后,生成的追踪数据会被保存到设备的 `/data/data/&lt;package_name&gt;/...

    Trace 32分析ramdump方法

    在开始使用 Trace32 进行 ramdump 分析之前,首先需要确保正确安装了 Trace32 软件。以下是一些安装步骤: 1. **解压安装包**: 将下载的 Trace32 压缩包解压至 C 盘根目录下。这是因为某些情况下,Trace32 在调试 ...

    SQL TRACE原理、方法、事件查看总结

    本篇文章将深入探讨SQL TRACE的原理、使用方法以及如何查看其产生的事件。 一、SQL TRACE原理 SQL TRACE的基本原理是跟踪SQL语句的执行过程,记录从解析到执行的每一个步骤,包括硬解析、软解析、执行计划、等待...

    TraceView使用技巧.

    TraceView是Android平台上用于分析应用性能的工具,它可以帮助开发者观察应用程序在运行时的行为,包括方法调用的时序和执行耗时。随着Android Studio成为主要的开发环境,TraceView的使用也与之紧密集成。以下是...

    trace32的使用培训

    本文档将详细介绍trace32的基本使用方法,旨在帮助初学者快速掌握该工具,并能有效地进行嵌入式系统的开发工作。 #### 二、ICD In-Circuit Debugger概述 - **定义**: ICD(In-Circuit Debugger)是一种嵌入式系统...

    trace32的使用说明

    本篇文档旨在详细介绍`trace32`模拟器(Simulator)的使用方法及其在高通平台上的具体应用。通过本指南的学习,您将能够更好地利用此工具来解决手机软件中的死机等问题。 #### 二、TRACE32Simulator简介 **TRACE32...

    TraceView工具分享

    在这个“TraceView工具分享”中,我们将深入探讨TraceView的功能、使用方法以及如何通过它来优化你的.NET应用。 TraceView主要功能包括: 1. **事件跟踪日志记录(ETW):** TraceView支持事件跟踪窗口提供者(ETW...

    How to collect 10046 trace_Chinese

    #### 收集10046 Trace 的方法 ##### 1. Trace 文件的位置 自11g R1版本开始,Oracle引入了一个新的诊断框架,该框架由参数`DIAGNOSTIC_DEST`控制,用于指定Trace文件和Core文件的存储位置。可以通过以下命令查询`...

    Oracletrace

    SQL_TRACE是一种基本的追踪方法,它可以记录SQL语句的执行细节,帮助我们理解SQL语句是如何被执行的。 启用SQL_TRACE的方式很简单,只需在会话中设置SQL_TRACE参数为TRUE即可: ```sql ALTER SESSION SET SQL_...

    tracepro的使用说明书(中文)

    总结,这份“TracePro的使用说明书(中文)”是初学者掌握TracePro的关键,通过深入学习和实践,用户将能够运用TracePro解决实际的光学设计问题。同时,持续关注相关资源和社区动态,将有助于不断提升光学仿真技能。

    TracePro入门与进阶

    总结来说,本书对于那些希望学习光学仿真设计,或已经在此领域工作但需要提升其TracePro软件使用技能的读者来说,无疑是一本非常实用的参考书籍。通过学习本书,读者将能够熟练运用TracePro软件进行光学设计分析,...

    Trace-based JIT简介(对Method JIT的改进)

    使用Trace-Based JIT,编译器可以跨方法边界跟踪并优化整个执行流程中的关键路径,而不是仅仅优化单个方法。 #### Trace-JIT架构 Trace-JIT架构主要由以下几个组成部分构成: 1. **Trace识别**:通过运行时分析...

    tracepro说明书

    《tracepro说明书》详细解析与...熟练掌握tracepro的使用方法,对于照明系统设计者来说,不仅能够提升设计效率,还能确保最终产品的质量和市场竞争力。希望本说明书能为各位读者提供有价值的参考,助力您的创新之路。

    纯java写的TCPTrace(源码)

    总结来说,TCPTrace是一个实用的网络工具,它的源码为Java开发者提供了学习TCP通信和网络编程的良好素材。通过理解和分析TCPTrace的实现,我们可以更好地掌握网络编程的核心概念,并将其应用到实际项目中。

    android sdk traceview.bat

    本文将详细介绍如何使用`traceview.bat`来深入理解并优化Android应用的性能。 **一、什么是Traceview?** Traceview是Android SDK自带的一个命令行工具,它主要用于分析Java代码的执行性能,帮助开发者找出应用...

    通过Android trace文件分析死锁ANR实例过程

    总结来说,通过分析Android trace文件,我们可以发现并解决由于死锁引发的ANR问题。理解线程间的交互、资源管理以及并发控制原理是有效避免和解决此类问题的关键。作为Android开发者,熟悉并熟练运用这些工具和技术...

Global site tag (gtag.js) - Google Analytics