Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::wcsncpy(3)		      C++ Standard Libary	       std::wcsncpy(3)

NAME
       std::wcsncpy - std::wcsncpy

Synopsis
	  Defined in header <cwchar>
	  wchar_t  *wcsncpy(  wchar_t  *dest,  const wchar_t *src, std::size_t
       count );

	  Copies at most count characters of the wide string pointed to	by src
       (including the
	  terminating null wide	character) to wide character array pointed  to
       by dest.

	  If count is reached before the entire	string src was copied, the re-
       sulting wide
	  character array is not null-terminated.

	  If,  after  copying  the  terminating	 null wide character from src,
       count is	not
	  reached, additional null wide	characters are written to  dest	 until
       the total of
	  count	characters have	been written.

	  If the strings overlap, the behavior is undefined.

Parameters
	  dest	- pointer to the wide character	array to copy to
	  src	- pointer to the wide string to	copy from
	  count	- maximum number of wide characters to copy

Return value
	  dest

Notes
	  In typical usage, count is the size of the destination array.

Example
       // Run this code

	#include <iostream>
	#include <cwchar>

	int main()
	{
	    const wchar_t src[]	= L"hi";
	    wchar_t dest[6] = {L'a', L'b', L'c', L'd', L'e', L'f'};

	    std::wcsncpy(dest,	src,  5); // this will copy 'hi' and repeat \0
       three times

	    std::wcout << "The contents	of dest	are: ";
	    for(const wchar_t c	: dest)	{
		if(c)
		    std::wcout << c << ' ';
		else
		    std::wcout << "\\0"	<< ' ';
	    }
	    std::wcout << '\n';
	}

Output:
	The contents of	dest are: h i \0 \0 \0 f

See also
	  wcscpy  copies one wide string to another
		  (function)
		  copies a certain amount of wide characters between two  non-
       overlapping
	  wmemcpy arrays
		  (function)
	  strncpy copies a certain amount of characters	from one string	to an-
       other
		  (function)

http://cppreference.com		  2022.07.31		       std::wcsncpy(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::wcsncpy&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help