Rumah > pembangunan bahagian belakang > C++ > Adakah Perbandingan Berantai C '(4 > y > 1)' Sentiasa Menilai kepada Salah?

Adakah Perbandingan Berantai C '(4 > y > 1)' Sentiasa Menilai kepada Salah?

Linda Hamilton
Lepaskan: 2024-12-19 01:11:09
asal
442 orang telah melayarinya

Does C  's Chained Comparison y > 1)" Sentiasa Menilai ke Salah? " /> y > 1)" Sentiasa Nilaikan kepada Salah? " />

Menilai Kesahihan Operator Logik Berantai dalam C

Pernyataan "(4 > y > 1)" menimbulkan persoalan tentang kesahihan dan penilaiannya dalam C . Mari kita mendalami aspek-aspek ini dan mendedahkan bagaimana pernyataan tersebut berkelakuan dalam C .

Penilaian Ekspresi

Pernyataan yang diberikan boleh dipecahkan kepada operator logiknya:

(4 > y) > 1
Salin selepas log masuk

C menilai operator logik berantai dari kiri ke betul. Oleh itu, penilaian berjalan seperti berikut:

  1. Bandingkan 4 dan y: Jika y kurang daripada 4, hasilnya ialah 1 (benar); Oleh kerana hasil perbandingan pertama (1 atau 0) tidak boleh lebih besar daripada 1, hasil perbandingan ini akan sentiasa palsu (0).
  2. Implikasi:

Ungkapan "(4 > y > 1)" adalah sah tetapi sentiasa dinilai palsu disebabkan oleh aliran logik yang dijelaskan di atas.

Pengecualian:

Satu pengecualian kepada tingkah laku ini adalah jika y ialah objek kelas tersuai dan pengendali ">" telah terlebih beban untuk mempamerkan tingkah laku yang berbeza. Dalam senario sedemikian, hasil perbandingan boleh menyimpang daripada peraturan perbandingan angka biasa.

Pernyataan Alternatif:

Untuk memberikan semantik logik yang lebih jelas, disyorkan untuk menulis semula ungkapan sebagai:

Rumusan ini mengelakkan kekaburan pernyataan asal dan menilai keadaan dengan betul dalam susunan logik yang dikehendaki.

Atas ialah kandungan terperinci Adakah Perbandingan Berantai C '(4 > y > 1)' Sentiasa Menilai kepada Salah?. 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