Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Penukaran Aritmetik Biasa C Mengendalikan Operasi Integer Bertanda dan Tidak Bertanda Campuran?

Bagaimanakah Penukaran Aritmetik Biasa C Mengendalikan Operasi Integer Bertanda dan Tidak Bertanda Campuran?

Linda Hamilton
Lepaskan: 2024-11-27 03:06:10
asal
608 orang telah melayarinya

How Do C  's Usual Arithmetic Conversions Handle Mixed Signed and Unsigned Integer Operations?

Peraturan Promosi untuk Pengendali Perduaan Bertanda Campuran

Pengendali yang mengambil operan jenis aritmetik melakukan penukaran automatik dan menentukan jenis hasil mengikut peraturan yang telah ditetapkan . Apabila operan mempunyai tanda yang berbeza, C mengikuti proses penukaran aritmetik biasa yang digariskan dalam §5/9 piawai C.

Dalam contoh pertama:

int max = std::numeric_limits<int>::max();
unsigned int one = 1;
unsigned int result = max + one;
Salin selepas log masuk

Promosi integral dilakukan, menukar kedua-dua maks dan satu kepada int, menghasilkan hasil int yang tidak ditandatangani. Penandatanganan maks diabaikan, membawa kepada keputusan 2147483648.

Dalam contoh kedua:

unsigned int us = 42;
int neg = -43;
int result = us + neg;
Salin selepas log masuk

Penukaran mengikut peraturan bahawa operan yang tidak ditandatangani diutamakan, menyebabkan neg menjadi ditukar kepada jenis yang tidak ditandatangani. Penukaran ini menghasilkan nilai yang ditentukan pelaksanaan untuk hasil int kerana nilai us neg tidak boleh diwakili sebagai int.

Atas ialah kandungan terperinci Bagaimanakah Penukaran Aritmetik Biasa C Mengendalikan Operasi Integer Bertanda dan Tidak Bertanda Campuran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan