C ++ wcstombs () - C ++ Standart Kitaplığı

C ++ 'daki wcstombs () işlevi, bir geniş karakter dizesini eşdeğer çok baytlı diziye dönüştürür.

Wcstombs () işlevi başlık dosyasında tanımlanmıştır.

wcstombs () prototipi

 size_t wcstombs (char * dest, const wchar_t * src, size_t maks);

Wcstombs () işlevi üç argüman alır ve bir tamsayı değeri döndürür.

Bu işlev, ilk elemanı src ile gösterilen geniş karakter dizgisini çok baytlı gösterimine dönüştürür.

Sonuç, dest ile gösterilen bellek konumunda saklanır. Max parametresi, dönüştürülecek maksimum geniş karakter sayısını temsil eder.

Dönüşüm mekanizması, wctomb dönüşüm durumunun etkilenmemesi dışında wctomb ile aynıdır. Aşağıdaki durumlarda dönüştürme durur:

  • Daha sonra dönüştürülen ve saklanan boş bir karakterle karşılaşılır.
  • Geçerli C yerel ayarında geçerli bir karaktere karşılık gelmeyen bir wchar_t bulundu.
  • maksimum sayıda geniş karakter dönüştürüldü.

wcstombs () Parametreler

  • dest: Ortaya çıkan çok baytlı karakter dizisinin işaretçisi.
  • src: Çok baytlı karaktere dönüştürülen geniş karakterin ilk öğesine işaretçi.
  • max: Dönüştürülecek maksimum geniş karakter sayısı.

wcstombs () Dönüş değeri

  • Dönüşüm başarılı olursa, wcstombs (), hedef diziye yazılan sonlandırma karakterini (yani ' 0') hariç tutarak çok baytlı karakterlerin sayısını döndürür.
  • Dönüştürme sırasında herhangi bir hata oluşursa -1 döndürür.

Örnek: wcstombs () işlevi nasıl çalışır?

 #include #include using namespace std; int main() ( wchar_t src() = L"Welcome To Programiz.com"; char dest(50); int num; num = wcstombs(dest, src, 50); cout << "Number of wide character converted = " << num << endl; cout << "Multibyte Character String = " << dest << endl; return 0; )

Programı çalıştırdığınızda, olası bir çıktı:

 Dönüştürülen geniş karakter sayısı = 24 Çok Baytlı Karakter String = Programiz.com'a Hoş Geldiniz

Ilginç makaleler...