我在MFC中使用TRACE,但它不起作用(没有输出)。为什么?

时间:2014-10-16 00:45:30

标签: c++ mfc visual-studio-debugging

TRACE("This is a TRACE statement\n");
OutputDebugString("dd");
for(int x=0; x<pDoc->r_length; x++)
{
    TRACE("The value of x is %d\n", x);
    for(int y=0; y<pDoc->c_length; y++)
    {
        TRACE("x = %d and y = %d\n", x, y);
        data=pDoc->m_OpenImg[x][y]+100;//circle image +100

        //choose method for Saturation.
        if(data>255)
        {
            pDoc->m_ResultImg[x][y]=255;//save the output value
        }
        else
        {
            pDoc->m_ResultImg[x][y]=data;//save the output value.
        }
    }
}

本学期我正在学习MFC。我想看看TRACE的调试输出。 (我在MSDN中找到了TRACE) 这是我的MFC代码的一部分。我把TRACE放入for循环中。除了问题TRACE和OutputDebugString无法正常工作,代码的其他部分工作正常。我想看看调试输出。请帮帮我。

1 个答案:

答案 0 :(得分:0)

使用TRACEOutputDebugString时,输出不会进入正常的命令窗口。而是转到特殊的调试输出流。如果从Visual Studio中运行该程序,则可以在“输出”窗格中看到此流。如果您独立运行它(在命令窗口中,或双击图标),您需要一个可以监视流的特殊实用程序。一个这样的效用是DebugView

请注意,TRACE仅适用于Debug版本,而OutputDebugString适用于任何构建类型。