Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Tentukan dengan Boleh Menentukan sama ada Persekitaran C Saya adalah 32-bit atau 64-bit?

Bagaimanakah Saya Boleh Tentukan dengan Boleh Menentukan sama ada Persekitaran C Saya adalah 32-bit atau 64-bit?

Linda Hamilton
Lepaskan: 2024-11-20 15:02:18
asal
309 orang telah melayarinya

How Can I Reliably Determine if My C   Environment is 32-bit or 64-bit?

Membezakan Antara Persekitaran 32 dan 64-bit dalam C

Menentukan lebar bit (32 vs 64) kompilasi C adalah penting untuk operasi tertentu. Walaupun pendekatan biasa menggunakan makro untuk membandingkan nilai maksimum, ia menimbulkan kebimbangan tentang kemungkinan kegagalan.

Kaedah yang Dicadangkan:

Daripada bergantung pada makro semata-mata, pertimbangkan untuk menggunakan pangkah -pendekatan platform yang memanfaatkan takrifan khusus pengkompil. Tentukan pembolehubah tersuai (cth., ENVIRONMENT64 dan ENVIRONMENT32) dan tetapkan pembolehubah tersebut berdasarkan platform pengkompil. Berikut ialah contoh coretan kod:

// Check Windows
#if _WIN32 || _WIN64
#if _WIN64
#define ENVIRONMENT64
#else
#define ENVIRONMENT32
#endif
#endif

// Check GCC
#if __GNUC__
#if __x86_64__ || __ppc64__
#define ENVIRONMENT64
#else
#define ENVIRONMENT32
#endif
#endif

// Check based on custom variables
#ifdef ENVIRONMENT64
DoMy64BitOperation();
#else
DoMy32BitOperation();
#endif
Salin selepas log masuk

Penyelesaian Alternatif:

Sebagai alternatif, anda boleh menetapkan pembolehubah ini secara eksplisit daripada baris arahan pengkompil:

-DENVIRONMENT64=1
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Tentukan dengan Boleh Menentukan sama ada Persekitaran C Saya adalah 32-bit atau 64-bit?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan