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

FreeBSD Manual Pages

  
 
  

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

NAME
       std::bitset::count - std::bitset::count

Synopsis
	  std::size_t count() const;			 (until	C++11)
	  std::size_t count() const noexcept;		 (since	C++11)
							 (until	C++23)
	  constexpr std::size_t	count()	const noexcept;	 (since	C++23)

	  Returns the number of	bits that are set to true.

Parameters
	  (none)

Return value
	  number of bits that are set to true.

Example
       // Run this code

	#include <iostream>
	#include <bitset>

	int main()
	{
	    std::bitset<8> b("00010010");
	    std::cout << "initial value: " << b	<< '\n';

	    // find the	first unset bit
	    std::size_t	idx = 0;
	    while (idx < b.size() && b.test(idx)) ++idx;

	    // continue	setting	bits until half	the bitset is filled
	    while (idx < b.size() && b.count() < b.size()/2) {
		b.set(idx);
		std::cout << "setting bit " << idx << ": " << b	<< '\n';
		while (idx < b.size() && b.test(idx)) ++idx;
	    }

	}

Output:
	initial	value: 00010010
	setting	bit 0: 00010011
	setting	bit 2: 00010111

See also
	  size	   returns the number of bits that the bitset holds
		   (public member function)
	  popcount counts the number of	1 bits in an unsigned integer
	  (C++20)  (function template)

http://cppreference.com		  2022.07.31		 std::bitset::count(3)

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

home | help