La funzione wcsncpy () in C ++ copia un numero specificato di caratteri larghi dall'origine alla destinazione.
La funzione wcsncpy () è definita nel file di intestazione.
prototipo di wcsncpy ()
wchar_t * wcsncpy (wchar_t * dest, const wchar_t * src, size_t count);
La funzione wcsncpy () accetta tre argomenti: dest, src e count. Copia un massimo di count caratteri larghi dalla stringa larga puntata da src alla posizione di memoria puntata da dest.
Se count è inferiore alla lunghezza di src, i primi caratteri count vengono copiati in dest e non viene terminato con null. Se count è maggiore della lunghezza di src, tutti i caratteri wide da src vengono copiati in dest e vengono aggiunti ulteriori caratteri null di terminazione fino a quando non è stato scritto un totale di caratteri count wide.
Il comportamento è indefinito se le due stringhe larghe si sovrappongono.
Parametri wcsncpy ()
- dest: puntatore a un ampio array di caratteri in cui vengono copiati i contenuti.
- src: puntatore a un ampio array di caratteri da cui vengono copiati i contenuti.
- count: numero massimo di caratteri larghi da copiare.
wcsncpy () Restituisce il valore
- La funzione wcsncpy () restituisce dest.
Esempio: come funziona la funzione wcsncpy ()?
#include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t src() = L"u0166u0113u010bu0127u0149u0151u013cu014cu0123u0194"; wchar_t dest() = L"Hello Hi"; wcout << L"Before copying, dest = " << dest << endl; wcsncpy(dest, src, 4); wcout << L"After copying, dest = " << dest << endl; return 0; )
Quando esegui il programma, l'output sarà:
Prima di copiare, dest = Hello Hi Dopo la copia, dest = Ŧēċħo Hi