ฉันกำลังอ่านร่างของข้อกำหนด C11 คำหลักที่แนะนำใหม่: ทุกคนรู้สึกเหมือนส่วนขยายที่กำหนดเองแทนที่จะใช้คำหลักที่สงวนมาตรฐานชอบ_Bool, _Alignof, _Atomic
struct, union, int
ฉันรู้ว่ามาตรฐานโดยทั่วไปประกอบด้วยส่วนขยายมาตรฐาน ... แต่ถึงกระนั้นนี่มันแย่มาก! บางทีเราอาจจะจบลงด้วยการ__Long_Long_Reallylong_Integer_MSVC_2020_t
คืบคลานในมาตรฐาน!
ความเข้ากันได้แบบย้อนกลับของรหัสที่ไม่เป็นมาตรฐานเป็นเพียงเหตุผลเดียวของรูปแบบใหม่ของคำหลักหรือไม่
<stdbool.h>
ไฟล์ส่วนหัวจะต้องมี preprocessor #define bool _Bool
แมโครเช่น นี่เป็นโซลูชันที่เรียบร้อยเนื่องจากยังคงความเข้ากันได้ย้อนหลัง แต่อนุญาตให้ใช้รหัสใหม่ใด ๆ ซึ่งรวมถึงไฟล์ส่วนหัวใหม่เพื่อใช้ไวยากรณ์ที่น่าสนใจยิ่งขึ้น