Funktionen wcsncpy () i C ++ kopierar ett specificerat antal breda tecken från källa till destination.
Funktionen wcsncpy () definieras i rubrikfilen.
wcsncpy () prototyp
wchar_t * wcsncpy (wchar_t * dest, const wchar_t * src, count_t count);
Funktionen wcsncpy () tar tre argument: dest, src och count. Den kopierar maximalt antal breda tecken från den breda strängen som pekas ut av src till minnesplatsen som dest.
Om räkningen är mindre än längden på src kopieras första räknetecken till dest och det avslutas inte noll. Om räkningen är mer än längden på src kopieras alla breda tecken från src till dest och ytterligare avslutande null breda tecken läggs till tills totalt antal räknade breda tecken har skrivits.
Beteendet är odefinierat om de två breda strängarna överlappar varandra.
wcsncpy () Parametrar
- dest: Pekare till ett brett teckenarray där innehållet kopieras till.
- src: Pekare till en bred karaktärsuppsättning där innehållet kopieras från.
- count: Maximalt antal breda tecken att kopiera.
wcsncpy () Returvärde
- Funktionen wcsncpy () returnerar dest.
Exempel: Hur fungerar 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ör programmet blir resultatet:
Innan kopiering, dest = Hej Hej Efter kopiering, dest = Ŧēċħo Hej