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

FreeBSD Manual Pages

  
 
  

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

NAME
       std::wcsncmp - std::wcsncmp

Synopsis
	  Defined in header <cwchar>
	  int  wcsncmp(	 const	wchar_t*  lhs, const wchar_t* rhs, std::size_t
       count );

	  Compares at most count wide characters of two	 null-terminated  wide
       strings.	The
	  comparison is	done lexicographically.

	  The  sign  of	 the  result is	the sign of the	difference between the
       values of the first
	  pair of wide characters that differ in the strings being compared.

	  The behavior is undefined if lhs or rhs are not  pointers  to	 null-
       terminated strings.

Parameters
	  lhs, rhs - pointers to the null-terminated wide strings to compare
	  count	   - maximum number of characters to compare

Return value
	  Negative value if lhs	appears	before rhs in lexicographical order.

	  Zero if lhs and rhs compare equal.

	  Positive value if lhs	appears	after rhs in lexicographical order.

Example
       // Run this code

	#include <iostream>
	#include <cwchar>
	#include <clocale>
	#include <locale>

	void demo(const	wchar_t* lhs, const wchar_t* rhs, int sz)
	{
	    int	rc = std::wcsncmp(lhs, rhs, sz);
	    if(rc == 0)
		std::wcout << "First " << sz <<	" characters of	["
			  << lhs << "] equal ["	<< rhs << "]\n";
	    else if(rc < 0)
		std::wcout << "First " << sz <<	" characters of	["
			  << lhs << "] precede [" << rhs << "]\n";
	    else if(rc > 0)
		std::wcout << "First " << sz <<	" characters of	["
			  << lhs << "] follow [" << rhs	<< "]\n";
	}

	int main()
	{
	    const wchar_t str1[] = L"";
	    const wchar_t str2[] = L" ";

	    std::setlocale(LC_ALL, "en_US.utf8");
	    std::wcout.imbue(std::locale("en_US.utf8"));
	    demo(str1, str2, 5);
	    demo(str2, str1, 8);
	    demo(str1, str2, 2);
	}

Output:
	First 5	characters of [] precede [ ]
	First 8	characters of [	] follow []
	First 2	characters of [] equal [ ]

See also
	  strncmp compares a certain number of characters from two strings
		  (function)
	  wcscmp  compares two wide strings
		  (function)
	  wmemcmp compares a certain amount of wide characters from two	arrays
		  (function)
	  wcscoll  compares  two wide strings in accordance to the current lo-
       cale
		  (function)

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

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

home | help