C# Debug和Trace:输出调试信息
在 C# 语言中允许在程序运行时输出程序的调试信息,类似于使用 Console.WriteLine 的方式向控制台输出信息。
所谓调试信息是程序员在程序运行时需要获取的程序运行的过程,以便程序员更好地解决程序中出现的问题,这种调试也被称为是非中断调试。
输出调试信息的类保存在 System.Diagnostics 命名空间中,通常用 Debug 类或 Trace 类实现调试时输出调试信息,具体的语句如下。
Debug.WriteLine();
Trace.WriteLine();
其中,Debug.WriteLine() 是在调试模式下使用的;Trace.WriteLine 除了可以在调试模式下使用,还可以用于发布的程序中。
下面通过实例来演示 Debug 类和 Trace 类的使用。
【实例】创建一个字符串类型的数组,在数组中存入从控制台输入的值,并输出每次向数组中存入的值。
本实例使用控制台程序完成,代码如下。
class Program
{
static void Main(string[] args)
{
string[] str = new string[5];
Debug.WriteLine("开始向数组中存值:");
for(int i = 0; i < str.Length; i++)
{
str[i] = Console.ReadLine();
Debug.WriteLine("存入的第{0}个值为{1}", i, str[i]);
}
Debug.WriteLine("向数组中存值结束!");
}
}
运行该程序,在输岀界面中查看通过 Debug 类输出的信息,界面如下图所示。

从输出窗口的内容可以看出,通过 Debug 类所打印的内容全部显示在该窗口中。
使用 Trace 类也能完成同样的效果,只需将上述代码中的 Debug 类换成 Trace 类即可。
提示:Trace 类的 WriteLine 方法中的参数不支持上述代码中 Debug 类的 WriteLine 方法的参数形式,只能传递字符串。
需要注意的是当程序在 Debug 状态下执行时使用 Debug 类打印的信息才会在输出窗口中显示,在 Release 状态下执行时只有 Trace 类输出的内容才会显示在输出窗口中。
更改程序执行的状态可以在 Visual Studio 2015 的工具栏中进行选择,如下图所示。

默认情况下,在 Visual Studio 2015 中的执行方式是 Debug,如果需要更改为其他状态, 可以在其下拉列表框中选择 Release 方式,并且在一个解决方案中不同的项目可以选择不同的执行方法。
在上图中 Debug 处的下拉列表框中选择“配置管理器”选项,弹出如下图所示的对话框。

在其中通过选择“配置”栏中的选项即可为每个项目设置 Debug 形式或 Release 形式。
C# Debug和Trace:输出调试信息的更多相关文章
- 【OT1.0 + TP3.2】开启trace调试、输出调试信息、开启自定义菜单
1.开启trace调试 A- 后台系统设置 show-page-trace = 1 B-config.php文件.配置 show-page-trace = true 2.输出调试信息 很奇怪,OT竟然 ...
- 使用OutputDebugString输出调试信息
在编写控制台程序的时候我们经常会使用printf输出调试信息,使我们了解程序的状态,方便调试,但是当编写非控制台程序的时候这种方法就行不通了,那我们应该怎么办?上网查了一些方法,大致就如下几种 使用L ...
- js操作dom---创建一个域来输出调试信息
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- Win32和MFC项目如何输出调试信息到VS的调试窗口
直接举例说明: Win32项目: #include <Windows.h> OutputDebugString(TEXT("调试信息:MyCircleImpl::~MyCircl ...
- shell输出调试信息
[shell输出调试信息] 1.使用trap命令 trap命令用于捕获指定的信号并执行预定义的命令. 其基本的语法是: trap 'command' signal 其中signal是要捕获的信号,co ...
- Delphi中使用Dos窗口输出调试信息
在项目文件 *.DPR (Project->View Source) 里加上{$APPTYPE CONSOLE} 然后,在需要输出处加上 Writeln(‘your debug messa ...
- Qt 使用#define+qDebug()输出调试信息
/******************************************************************************************* * Qt 使用 ...
- 在VC6的debug框里面输出版权信息
在VC6的debug框里面输出版权信息,效果如下: 原理是: 新建一个批处理文档:如:"info.bat",放置到工程目录下[和dsw同级] @echo ===本程序作者是不要呵呵 ...
- dotnet core 输出调试信息到 DebugView 软件
本文告诉大家如何在 dotnet core 输出调试信息到 DebugView 软件 在之前告诉小伙伴,如何在 WPF 输出调试信息到 DebugView 软件,请看文章 WPF 调试 获得追踪输出 ...
随机推荐
- blender建模常用建模快捷键
编辑物体 M2选取 M2+SHIFT选取多个 A全选 B+M1矩阵选择 C+M1笔刷选择 CTRL+M1套索选择 CTRL+SHIFT+M1取消套索选择 ALT+M2选择边循环,面 CTRL+ALT+ ...
- java原码、反码、补码、位运算
1.对于有符号的数(java中的数都是有符号的) 二进制的最高位是符号位:0表示正数,1表示负数 正数的原码,反码,补码都一样 负数的反码=它的原码符号位不变,其它位取反 负数的补码=它的反码+1 0 ...
- IoC容器-Bean管理XML方式(注入外部bean)
注入属性-外部bean (1)创建两个类service类和dao类 (2)在service调用dao里面的方法 (3)在spring配置文件中进行配置
- numpy常用函数记录
np.square() 函数返回一个新数组,该数组的元素值为源数组元素的平方. 源阵列保持不变. 示例: import numpy as np a = np.array([[1, 2, 3], [4, ...
- Django之ajax(jquery)封装(包含 将 csrftoken 写入请求头方法)
由于支持问题,未使用 es6 语法 _ajax.js /** * 发起请求 * @param url 请求地址 * @param data 请求数据 { } json格式 * @param type ...
- django之集成阿里云通信(发送手机短信验证码)
python3 + django2.0 集成 "阿里云通信" 服务: (SDK文档地址:https://help.aliyun.com/document_detail/55491. ...
- R-B Tree
1.简介 R-B Tree,全称Red-Black Tree,又称为"红黑树",为一种自平衡二叉查找树(特殊的平衡二叉树,都是在插入和删除操作时通过特定操作保持二叉树的平衡,从而获 ...
- Net6 DI源码分析Part2 Engine,ServiceProvider
ServiceProvider ServiceProvider是对IServiceProvider实现,它有一个internal的访问修饰符描述的构造,并需要两个参数IServiceCollectio ...
- 自定义ASP.NET MVC Html标签辅助方法
原文:https://blog.csdn.net/a497785609/article/details/50184779 在ASP.NET MVC中,Html辅助方法给我们程序员带来很多方便,其重要性 ...
- eclipse中快捷键中逗号是怎么用的,如ctrl+2,L
Ctrl +2 同时按下,松开后,再按下L