คำถามติดแท็ก binary-operators

9
ตัวดำเนินการเปลี่ยนแปลงระดับบิต (bit-shift) คืออะไรและทำงานอย่างไร
ฉันพยายามเรียนรู้ C ในเวลาว่างและภาษาอื่น ๆ (C #, Java และอื่น ๆ ) มีแนวคิดเดียวกัน (และบ่อยครั้งที่ผู้ให้บริการรายเดียวกัน) ... สิ่งที่ฉันสงสัยคือในระดับหลักสิ่งที่ไม่บิตขยับ ( <<, >>, >>>) ทำสิ่งที่เป็นปัญหาก็สามารถช่วยแก้ปัญหาและสิ่งที่ gotchas แฝงตัวอยู่รอบโค้งหรือไม่ ในคำอื่น ๆ คู่มือเริ่มต้นที่แน่นอนในการขยับเล็กน้อยในทุกความดีของมัน

1
ทำไมคอมไพเลอร์ C # จึงแปลสิ่งนี้! = การเปรียบเทียบราวกับว่าเป็นการเปรียบเทียบ>
ฉันมีโอกาสบริสุทธิ์ค้นพบว่าคอมไพเลอร์ C # เปลี่ยนวิธีนี้: static bool IsNotNull(object obj) { return obj != null; } ... เข้าสู่CILนี้: .method private hidebysig static bool IsNotNull(object obj) cil managed { ldarg.0 // obj ldnull cgt.un ret } …หรือหากคุณต้องการดูรหัส C # ที่ถอดรหัสแล้ว: static bool IsNotNull(object obj) { return obj > null; // (note: this is …
147 c#  cil  il  notnull  binary-operators 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.