কম্পিউটার টিউটোরিয়াল

C++ bitset র আকর্ষণীয় তথ্য ও ব্যবহার


C++ STL-এ bitset হলো বিট-লেভেলে কাজ করার কন্টেইনার। শুধু ০ এবং ১ স্টোর করে।

১. বিটসেট স্ট্রিংয়ের মতো

স্ট্রিং থেকে নির্দিষ্ট অংশ নিয়ে বিটসেট তৈরি করা যায়।

#include <bitset>
#include <string>
#include <iostream>
int main() {
    std::string bit_string = "10010110";
    std::bitset<8> b1(bit_string, 1, 4); // ইনডেক্স ১ থেকে ৪টি বিট
    std::cout << b1 << '\n'; // আউটপুট: 00000010
    return 0;
}

২. স্ট্রিং থেকে বিটসেট কনস্ট্রাক্ট করা

কাস্টম ক্যারেক্টারকে ০/১ হিসেবে বিবেচনা করে বিটসেট বানানো যায়।

bitset(str, offset, size, zeroVal, oneVal)
  • zeroVal — যা ০ হিসেবে গণ্য হবে
  • oneVal — যা ১ হিসেবে গণ্য হবে
string bitstr = "xyxxyyyx";
bitset<8> bits(bitstr, 0, bitstr.size(), 'x', 'y');
// আউটপুট: 01001110 (x=0, y=1)

৩. বিটসেটকে স্ট্রিংয়ে কনভার্ট

to_string() মেথড দিয়ে বিটসেটকে স্ট্রিং বানানো যায়। ক্যারেক্টার রিপ্লেসও করা যায়।

bitset<8> b(19); // 00010011
b.to_string();        // "00010011"
b.to_string('T','P'); // "TTTPTTPP" (0→T, 1→P)

আউটপুট উদাহরণ

The value of bitset is : 00010011
The string conversion of bitset is : 00010011
string conversion by replacing 0 with T and 1 with P is : TTTPTTPP
  1. C++-এ getline (string) ফাংশন

  2. C++-এ String at() মেথড ব্যবহার

  3. C++-এ স্ট্রিং টোকেনাইজেশন: স্ট্রিম এবং getline() ব্যবহার

  4. C++-এ স্ট্রিং টোকেনাইজ (Tokenize) করা