Visual Studio Compilers (2005 ถึง 2008) กำหนดมาโครสี่ตัวสำหรับสภาพแวดล้อม x86/x64 บิต อ้างอิงถึงมาโครที่กำหนดไว้ล่วงหน้า
- _M_X64 กำหนดไว้สำหรับโปรเซสเซอร์ x64
- _M_IX86 กำหนดไว้สำหรับโปรเซสเซอร์ x86 ดูค่าสำหรับตาราง _M_IX86 ด้านล่างสำหรับข้อมูลเพิ่มเติม สิ่งนี้ไม่ได้กำหนดไว้สำหรับโปรเซสเซอร์ x64
- _WIN32 กำหนดไว้สำหรับแอปพลิเคชันสำหรับ Win32 และ Win64 กำหนดไว้เสมอ
- _WIN64 กำหนดไว้สำหรับแอปพลิเคชันสำหรับ Win64
ตอนนี้บนเครื่อง x32 บิต _M_X64 จะไม่ถูกตั้งค่า บนเครื่อง 64 บิต หากคุณกำลังสร้างบนสภาพแวดล้อม 32 บิต _M_X64 จะถูกยกเลิกการตั้งค่า และ _M_IX86 จะถูกกำหนด _WIN32 ถูกกำหนดเสมอโดยไม่คำนึงถึงรุ่น 32/64 บิต
ในโปรเซสเซอร์ x64 ทั้งหมด _M_X64 มีความสำคัญเป็นพิเศษหรือไม่ จะมีสถานการณ์เมื่อไม่ได้กำหนด _M_X64 เมื่อเป้าหมายคือ x64 หรือไม่