Menentukan Nilai Maksimum untuk Integer Tidak Bertanda dalam Go
Dalam Go, integer tidak bertanda boleh mewakili nilai bukan negatif dan menyatakan nilai maksimumnya ialah penting untuk pelbagai tujuan. Satu senario sedemikian timbul apabila memulakan minLen panjang minimum dalam gelung yang mengira panjang minimum dan maksimum daripada sekeping struct.
Untuk menentukan nilai maksimum yang boleh diwakili bagi jenis integer tidak bertanda, kita boleh menggunakan aritmetik pelengkap kedua-duanya. digunakan oleh jenis integer dalam Go. Mengikut peraturan, nilai pemalar untuk integer tidak bertanda (uint) boleh disimpulkan seperti berikut:
const MaxUint = ^uint(0)
MaxUint mewakili nilai tertinggi yang mungkin untuk integer tidak bertanda sebarang saiz bit. Nilainya ialah semua 1 dalam perwakilan binari.
Contoh:
Untuk memulakan minLen sebagai nilai maksimum yang boleh diwakili untuk jenis uint, kita boleh menggunakan:
var minLen uint = ^uint(0)
Ini memastikan bahawa nilai awal minLen ialah nilai bukan negatif terbesar yang mungkin. Semasa gelung, jika ada thing.n yang kurang daripada minLen, ia akan mengemas kini panjang minimum dengan betul.
Atas ialah kandungan terperinci Bagaimanakah Saya Menentukan Nilai Maksimum untuk Integer Tidak Ditandatangani dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!