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

C++-এ ৩২-বিট বা ৬৪-বিট কম্পাইলেশন চেক করা

C++-এ আর্কিটেকচার চেক করার জন্য প্রিডিফাইনড ম্যাক্রো ব্যবহার করা হয়। উইন্ডোজের জন্য _WIN64 এবং _WIN32। লিনাক্স/ম্যাক-এ __x86_64__, __i386__, __aarch64__ ইত্যাদি।

উইন্ডোজ-স্পেসিফিক উদাহরণ

#include <iostream>
using namespace std;

int main() {
    #ifdef _WIN64
        cout << "64-bit system" << endl;
    #elif _WIN32
        cout << "32-bit system" << endl;
    #endif
    return 0;
}

আউটপুট (৬৪-বিট সিস্টেমে)

64-bit system

ক্রস-প্ল্যাটফর্ম ম্যাক্রো

আর্কিটেকচারম্যাক্রো
x86_64 (64-bit)__x86_64__, _M_X64 (MSVC)
x86 (32-bit)__i386__, _M_IX86 (MSVC)
ARM64__aarch64__, _M_ARM64 (MSVC)
ARM32__arm__, _M_ARM (MSVC)

রানটাইম চেক (C++11+)

#include <iostream>
#include <cstdint>
int main() {
    if (sizeof(void*) == 8) cout << "64-bit";
    else if (sizeof(void*) == 4) cout << "32-bit";
    return 0;
}

নোট: কম্পাইল টাইম চেক (#ifdef) রানটাইম চেকের চেয়ে ভালো, কারণ ডেড কোড এলিমিনেশন হয়।

  1. ত্রুটি কোড 'DISM Error 1910' সমাধান

  2. উইন্ডোজে "0x0000FFFF" এরর কোড সমাধান করবেন যেভাবে

  3. আইফোনে স্পাইওয়্যার সনাক্ত করুন: নিরাপদে গোপন ম্যালওয়্যার শনাক্ত করার উপায়

  4. Windows 10 Error 48 ফিক্স: 'Software for This Device Has Been Blocked' মেসেজ বন্ধ করুন