C ++ wcsncpy () - C ++ Standardbibliotek

Funktionen wcsncpy () i C ++ kopierer et specificeret antal brede tegn fra kilde til destination.

Funktionen wcsncpy () er defineret i headerfilen.

wcsncpy () prototype

 wchar_t * wcsncpy (wchar_t * dest, const wchar_t * src, count_t count);

Funktionen wcsncpy () tager tre argumenter: dest, src og count. Den kopierer maksimalt antal brede tegn fra den brede streng, som src peger på, til den hukommelsesplacering, der er henvist til af dest.

Hvis optællingen er mindre end længden på src, kopieres de første optællingstegn til dest, og den afsluttes ikke nul. Hvis optællingen er mere end længden på src, kopieres alle de brede tegn fra src til dest, og yderligere afsluttende nulbrede tegn tilføjes, indtil der er skrevet et antal antal brede tegn.

Adfærden er udefineret, hvis de to brede strenge overlapper hinanden.

wcsncpy () Parametre

  • dest: Markør til et bredt tegnarray, hvor indholdet kopieres til.
  • src: Markør til et bredt tegnarray, hvor indholdet kopieres fra.
  • optælling: Maksimalt antal brede tegn, der skal kopieres.

wcsncpy () Returværdi

  • Funktionen wcsncpy () returnerer dest.

Eksempel: Hvordan fungerer 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; )

Når du kører programmet, vil output være:

 Før kopiering, dest = Hej Hej Efter kopiering, dest = Ŧēċħo Hej

Interessante artikler...