มีข้อบกพร่องอะไรบ้างที่ผลักดันคุณให้คลั่งไคล้ใน C APIs (รวมถึงห้องสมุดมาตรฐานห้องสมุดบุคคลที่สามและส่วนหัวภายในโครงการ) เป้าหมายคือการระบุข้อผิดพลาดในการออกแบบ API ใน C ดังนั้นผู้ที่เขียนไลบรารี C ใหม่สามารถเรียนรู้จากความผิดพลาดในอดีต
อธิบายว่าเหตุใดข้อบกพร่องจึงไม่ดี (ควรเป็นตัวอย่าง) และพยายามเสนอการปรับปรุง แม้ว่าวิธีการแก้ปัญหาของคุณอาจไม่สามารถใช้งานได้จริงในชีวิตจริง (มันสายเกินไปที่จะแก้ไขstrncpy
) แต่ก็ควรให้ความสำคัญกับนักเขียนห้องสมุดในอนาคต
แม้ว่าจุดเน้นของคำถามนี้คือ C APIs แต่ปัญหาที่ส่งผลต่อความสามารถในการใช้ภาษาเหล่านี้ในภาษาอื่นก็สามารถทำได้
โปรดให้หนึ่งข้อบกพร่องต่อคำตอบเพื่อประชาธิปไตยสามารถเรียงลำดับคำตอบ
malloc
สตริง 'd จะแก้ไขได้อย่างไร ฉันคิดว่าการเป็นตัวอย่างที่ดีกับคำตอบแรกอาจช่วยให้คำถามนี้งอกงามได้ ขอบคุณ!