Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Adakah \"panjang\" Dijamin Sekurang-kurangnya 32 Bit dalam C ?

Adakah \"panjang\" Dijamin Sekurang-kurangnya 32 Bit dalam C ?

Linda Hamilton
Linda Hamiltonasal
2024-10-26 17:23:02182semak imbas

Is

Adakah "panjang" Dijamin sekurang-kurangnya 32 Bit?

Sementara C Standard menentukan perkembangan hierarki dalam saiz kamiran asas jenis (dengan "long int" sebagai yang terbesar), ia tidak secara eksplisit mewajibkan lebar bit tertentu untuk "panjang." Walau bagaimanapun, terdapat penentu penting yang memastikan "panjang" sekurang-kurangnya 32 bit.

Piawaian C mewarisi had C (18.3.2) untuk "LONG_MIN" dan "LONG_MAX," yang ditakrifkan sebagai -( 2^31 - 1) dan (2^31 - 1), masing-masing. Ini menunjukkan bahawa "panjang" mesti mampu menyimpan nilai dalam julat ini.

Selain itu, "std::numeric_limits::min()" dan "std::numeric_limits::max ()" dinyatakan bersamaan dengan "LONG_MIN" dan "LONG_MAX" (18.3.1.2). Ini bermakna "panjang" boleh mewakili had jenis "panjang."

Kesimpulannya, sementara "panjang" mungkin mempunyai perwakilan bit berubah dalam pelaksanaan yang berbeza, ia dijamin sekurang-kurangnya 32 bit disebabkan oleh keperluan untuk nilai minimum dan maksimumnya. Ini ditentukan oleh had C yang diwarisi oleh C dan cara "std::numeric_limits" mengendalikan had tersebut.

Atas ialah kandungan terperinci Adakah \"panjang\" Dijamin Sekurang-kurangnya 32 Bit dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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