C ++ wcstombs () - Libreria standard C ++

La funzione wcstombs () in C ++ converte una stringa di caratteri wide in una sequenza multibyte equivalente.

La funzione wcstombs () è definita nel file di intestazione.

prototipo di wcstombs ()

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

La funzione wcstombs () accetta tre argomenti e restituisce un valore intero.

Questa funzione converte la stringa di caratteri wide il cui primo elemento è puntato da src nella sua rappresentazione multibyte.

Il risultato viene memorizzato nella posizione di memoria indicata da dest. Il parametro max rappresenta il numero massimo di caratteri larghi da convertire.

Il meccanismo di conversione è lo stesso di quello dell'utero, tranne per il fatto che lo stato di conversione dell'utero non è influenzato. La conversione si interrompe se:

  • Viene rilevato un carattere nullo, che viene quindi convertito e memorizzato.
  • È stato trovato un wchar_t che non corrisponde a un carattere valido nella locale C corrente.
  • il numero massimo di caratteri larghi è stato convertito.

Parametri wcstombs ()

  • dest: puntatore all'array di caratteri multibyte risultante.
  • src: puntatore al primo elemento del carattere wide che viene convertito in carattere multibyte.
  • max: numero massimo di caratteri larghi da convertire.

wcstombs () Restituisce il valore

  • Se la conversione ha esito positivo, wcstombs () restituisce il numero di caratteri multibyte escluso il carattere di terminazione (es. " 0") scritto nell'array di destinazione.
  • Se si verifica un errore durante la conversione, restituisce -1.

Esempio: come funziona la funzione wcstombs ()?

 #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; )

Quando esegui il programma, un possibile output sarà:

 Numero di caratteri larghi convertiti = 24 Stringa di caratteri multibyte = Benvenuto in Programiz.com

Articoli interessanti...