Используйте CString с sprintf
У меня есть некоторый код C++, где мне нужно использовать CString с sprintf. В этом коде я создаю имена файлов, которые являются CStrings, определенными sprintf. Код приведен ниже.
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).txt
и TRJFPICA(0.25).txt
. Я должен использовать CStrings для моего кода.
Ошибка, которую я получаю, "operator =
" неоднозначна.
1 ответ:
Взгляните на
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);