y > 1)" menimbulkan persoalan tentang kesahihan dan penilaiannya dalam..."/> y > 1)" menimbulkan persoalan tentang kesahihan dan penilaiannya dalam...">
Rumah >pembangunan bahagian belakang >C++ >Adakah Perbandingan Berantai C '(4 > y > 1)' Sentiasa Menilai kepada Salah?
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
C menilai operator logik berantai dari kiri ke betul. Oleh itu, penilaian berjalan seperti berikut:
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!