C ++格式说明符不起作用

时间:2014-06-15 13:23:23

标签: c++ portaudio

在portaudio回调中,我正在运行循环,直到 framesperbuffer 变量。通过调试名为 cnt 的for循环变量正在递增,但格式说明符首先打印256然后是0.即使我使用tmp.Format(_TEXT("-%d-",3),我在CString中得到0。

这是我的代码片段,我正在使用visual studio 2010并且还尝试了_T和_TEXT,没有生成错误

float *inp=(float*)inputBuffer;
    float *outp=(float*)outputBuffer;
    CString  str;
    CString  tmp;
    for(unsigned int cnt=0; cnt< framesPerBuffer; cnt++)
    {
    tmp.Format(_TEXT("-%d-",cnt));
    str.Append(tmp);
    }

1 个答案:

答案 0 :(得分:0)

只是一个错位的人。你在_TEXT()宏参数列表中有格式的int参数,所以它根本没有被传递给Format

这应该更好:

tmp.Format(_TEXT("-%d-"),cnt);