Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

จะตรวจสอบได้อย่างไรว่าคอมไพล์โค้ด C ++ ใน 32 หรือ 64 บิตแล้ว?


ใน C ++ ไม่มีวิธีตรวจสอบสถาปัตยกรรมสภาพแวดล้อมโดยตรง มีมาโครสองระบบสำหรับระบบ Windows ที่สามารถใช้ตรวจสอบสถาปัตยกรรมได้ มาโครเหล่านี้คือ _WIN64 และ _WIN32 เมื่อระบบเป็น 64 บิต _WIN64 จะเป็น 1 มิฉะนั้น _WIN32 จะเป็น 1 ดังนั้นเมื่อใช้การตรวจสอบมาโคร เราสามารถระบุสถาปัตยกรรมได้

ตัวอย่าง

#include <iostream>
using namespace std;
int main() {
   #ifdef _WIN64
      cout << "This is 64 bit system" << endl;
   #elif _WIN32
      cout << "This is 32 bit system" << endl;
   #endif
}

ผลลัพธ์

This is 64 bit system