void FormatV (lpctstr lpszFormat, VA_LIST argList );
Parametreleri
lpszFormat
Bir Denetim Biçimlendir dize.
argList
Geçirilen bağımsız değişken listesi.
Açıklamalar
Çağrı biçemli bir dizge ve bağımsız değişken listesi bir CString için yazmak için bu üye işlev nesne aynı şekilde bu vsprintf , c tarzı karakter dizisine veri biçimleri. Bu işlev, biçimleri ve CStringiçinde bir dizi karakter ve değerleri depolar. Dize değişkenleri dönüştürülür ve göre lpszFormat ilgili biçim belirtimi ile çıkış.
String nesnesi parametre olarak FormatViçin teklif çağrısı başarısız olur. Örneğin, aşağıdaki kod:
CStri&ng str = "Bazı veriler";
Str.FormatV ("% s % d", str, 123); nbsp; / / Dikkat: str Ayrıca parametre listesinde kullanılan
önceden kestirilemeyecek sonuçlara neden olur.
Daha fazla bilgi için bkz: vsprintf Çalışma Zamanı Kitaplığı Başvurusu.
Örnek
//Using CString::FormatV(), aşağıdaki gibi işlevleri yazabilirsiniz:
void WriteLogEntry (CStdioFileamp; refFile, lpctstr pstrFormat,...)
{
CTime timeWrite;
timeWrite = CTime::GetCurrentTime();
/ / yazma zaman aşımı
CString str = timeWrite.Format ("%d %b %y h: % m % s-");
refFile.Write (str, str.GetLength());
/ / biçimlendirmek ve biz verilmiştir veri yazma
V&A_LIST args;
va_start (args, pstrFormat);
Str.FormatV (pstrFormat, değiştirgeler);
refFile.Write (str, str.GetLength());
/ / bir satırsonu koymak
refFile.Write ("\n", 1);
return;
}
Sen-ebilmek seslenmek yukarıdaki fonksiyonu ile herhangi sayıda parametre, örneğin:
WriteLogEntry (fileLog, "Programı başladı");
WriteLogEntry (fileLog, "İşlendi %d bayt", 91341);
WriteLogEntry (fileLog, "%d hata %d hatlarınızı içinde bulunan", 10, 1351);
WriteLogEntry (fileLog, "programı tamamlandı")
ha&ngi outputnbsp eklemek istiyorum; senin fileLog dosyası aşağıdakine benzer:
17 Apr 97 12: 34: 53 - programı başladı
17 Apr 97 12: 34: 59 - ana sayfaya göz 91341 bayt işlendi
17 Apr 97 12: 35: 22-1351 hatlarınızı içinde bulunan 10 hata
17 Apr 97 12: 35: 23 - programı tamamlandı
CString genel bakış |nbsp; Sınıf üyeleri | Hiyerarşi çizelgesi
Ayrıca bkz: CString::Format, va_start