Bagikan melalui


Metode CHString::Format(UINT,...) (chstring.h)

[Kelas CHString adalah bagian dari Kerangka Kerja Penyedia WMI yang sekarang dipertimbangkan dalam keadaan akhir, dan tidak ada pengembangan, peningkatan, atau pembaruan lebih lanjut yang akan tersedia untuk masalah terkait non-keamanan yang memengaruhi pustaka ini. API MI harus digunakan untuk semua pengembangan baru.]

Metode Format memformat dan menyimpan serangkaian karakter dan nilai dalam string CHString .

Sintaks

void  throw(CHeap_Exception) Format(
  UINT nFormatID,
  ...  
);

Parameter

nFormatID

Pengidentifikasi sumber daya string yang berisi string kontrol format.

...

Daftar argumen.

Menampilkan nilai

CHeap_Exception

Keterangan

Setiap argumen opsional (jika ada) dikonversi dan output sesuai dengan spesifikasi format yang sesuai di lpszFormat, atau dari sumber daya string yang diidentifikasi oleh nFormatID.

Catatan Untuk mengurangi paparan serangan keamanan, selalu gunakan string format untuk Format. Misalnya, Format(input) dapat dieksploitasi, dan Format("%s", input) tidak. Jangan pernah menggunakan string yang disediakan pengguna untuk string format. Jika string format Anda disimpan untuk tujuan seperti pelokalan, pastikan string dilindungi dari akses tulis yang tidak sah. Jika fungsi Anda menulis ke string daripada output standar, Anda mungkin perlu menghindari penggunaan trailing "%s" dalam string format.

Jika objek string ditawarkan sebagai parameter untuk Format, panggilan gagal. Misalnya, kode berikut menyebabkan hasil yang tidak dapat diprediksi.

Contoh

CHString str = L"Some Data";

// Attention: str is also used in the parameter list.
str.Format(L"%s%d", str, 123);

Catatan Saat Anda meneruskan string karakter sebagai argumen opsional, Anda harus mentransmisikannya secara eksplisit sebagai LPCWSTR. Argumen format memiliki bentuk dan fungsi yang sama dengan argumen format untuk fungsi printf . Karakter NULL ditambahkan ke akhir karakter tertulis.

Persyaratan

Persyaratan Nilai
Header chstring.h

Lihat juga

CHString

CHString::GetBuffer