3

我有一些 C++ 代码,我需要将 CString 与 sprintf 一起使用。在这段代码中,我创建的文件名是由 sprintf 定义的 CString。代码如下。

double Number;     
Number = 0.25; 

char buffer [50];

CString sFile;
sFile = sprintf(buffer,"TRJFPICD(%3.3f).txt",Number);

CString SFFile;
SFFile = sprintf(buffer,"TRJFPICV(%3.3f).txt",Number);

CString SFFFile;
SFFFile = sprintf(buffer,"TRJFPICA(%3.3f).txt",Number);

所需的文件名是TRJFPICD(0.25).txt, TRJFPICV(0.25).txtTRJFPICA(0.25).txt。我的代码必须使用 CStrings。

我得到的错误是 ' operator =' 是模棱两可的。

4

1 回答 1

6

看一下CString::Format(忽略CStringT部分 -CString源自CStringT)。它做你想做的事,并允许你干净地重写你的代码:

double Number = 0.25; 

CString sFile;
sFile.Format(_T("TRJFPICD(%3.3f).txt"), Number);

CString SFFile;
SFFile.Format(_T("TRJFPICV(%3.3f).txt"),Number);

CString SFFFile;
SFFFile.Format(_T("TRJFPICA(%3.3f).txt"),Number);
于 2013-02-19T22:18:23.310 回答