รุ่นใหม่ของตัววิเคราะห์โค้ด cppcheck 2.11 มาถึงแล้ว

ซีพีพีเช็ค

Cppcheck เป็นเครื่องมือวิเคราะห์แบบคงที่สำหรับโค้ด C/C++

เมื่อไม่กี่วันที่ผ่านมา มีการประกาศเปิดตัว Cppcheck เวอร์ชันใหม่ 2.11ซึ่งมีการปรับปรุงต่างๆ มากมาย รวมถึงการปรับปรุงส่วนติดต่อผู้ใช้ ตลอดจนการเพิ่มตัวเลือกและพารามิเตอร์ใหม่ๆ เป็นต้น

สำหรับผู้ที่ไม่คุ้นเคยกับ Cppcheck มันเป็นเครื่องมือที่มีประโยชน์สำหรับนักพัฒนาแอปพลิเคชัน C/C++ชุดเครื่องมือนี้ช่วยให้คุณตรวจสอบโปรแกรมของคุณเพื่อหาความไม่สอดคล้องกัน บัฟเฟอร์โอเวอร์โฟลว์ และปัญหาอื่นๆ ได้อย่างง่ายดาย

Cppcheck จะช่วยให้คุณไปที่โค้ดที่ต้องการอย่างรวดเร็วและเริ่มแก้ไขได้ เพียงดับเบิลคลิกที่โค้ดนั้น หลังจากนั้นโค้ดจะเปิดขึ้นพร้อมกับแผ่นจดบันทึก หากคุณไม่ได้ใช้แผ่นจดบันทึก คุณสามารถกำหนดค่าบางแอปพลิเคชันได้ สำหรับมัน เปิดรหัส

ในการวิเคราะห์โค้ดคุณสามารถใช้เครื่องมือวิเคราะห์ของตัวมันเองหรือเครื่องมือวิเคราะห์ภายนอกจาก Clang ก็ได้นอกจากนี้ยังมีสคริปต์ที่ให้ทรัพยากรในพื้นที่สำหรับการตรวจสอบโค้ดร่วมกันของแพ็กเกจ Debian ด้วย

คุณสมบัติใหม่หลักของ cppcheck 2.11

cppcheck เวอร์ชันใหม่ 2.11 นี้มีการปรับปรุงส่วนติดต่อผู้ใช้แบบบรรทัดคำสั่งรวมถึงการเพิ่มตัวเลือกใหม่ "--check-level"ซึ่งใช้กำหนดระดับรายละเอียดของการตรวจสอบ ค่าเริ่มต้นคือ "normal" หากต้องการตรวจสอบอย่างละเอียดมากขึ้น สามารถตั้งค่าเป็น"exhaustive" ได้

การเปลี่ยนแปลงที่สำคัญอีกประการหนึ่งคือ การควบคุมการตั้งค่าสำหรับตัวเลือกบรรทัดคำสั่งบางอย่างที่ต้องการค่าจำนวนเต็มที่ดีขึ้น และไม่จำเป็นต้องเรียกใช้ "--check-config"เพื่อรับข้อความโดยละเอียดจาก"missingInclude" และ "missingIncludeSystem" อีกต่อไป เนื่องจากข้อความเหล่านั้นจะแสดงขึ้นในการสแกนปกติเสมอหากเปิดใช้งาน " missingInclude "

นอกจากนี้ไฟล์ .cppcheck ถือว่าล้าสมัยแล้วและจะถูกลบออกในเวอร์ชัน 2.14 เพื่อรองรับแพลตฟอร์มประเภท "ไม่ระบุ" ดังนั้นจึงแนะนำให้ใช้ "ไม่ระบุ" แทนตัวเลือกในการแทนที่พาธสัมพัทธ์ด้วยพาธสัมบูรณ์ในกล่องโต้ตอบการเลือกไฟล์โปรเจ็กต์ถูกลบออกแล้ว

นอกจากนี้ ยังมีการเพิ่มการตรวจสอบ pop_back() สำหรับคอนเทนเนอร์ที่ว่างเปล่ารวมถึงการควบคุมที่ดีขึ้นในลูปสำหรับอัลกอริธึมไลบรารี STL any_of, all_of และ none_ofและการปรับปรุงตัววิเคราะห์การไหลของควบคุมด้วย

นอกจากนี้ ยังมีการกล่าวถึงว่าขณะนี้สามารถกำหนดค่าส่งคืนของฟังก์ชันได้แล้ว แม้ว่าจะใช้เงื่อนไขก็ตาม และ การตรวจสอบ constParameter และ constVariableได้ถูกแยกออกเป็น 3 ตัวระบุ ขึ้นอยู่กับว่าพารามิเตอร์หรือตัวแปรนั้นเป็นตัวชี้ ตัวอ้างอิง หรือตัวแปรภายใน เพื่อให้สามารถระงับข้อความบางประเภทได้อย่างแม่นยำยิ่งขึ้น

การเปลี่ยนแปลงที่สำคัญอื่นๆในเวอร์ชันใหม่นี้ ได้แก่:

  • การกำหนดขนาดของคอนเทนเนอร์ที่ส่งกลับโดยฟังก์ชันใหม่
  • อนุมานความหมายที่เป็นไปได้จากความหมายเชิงสัญลักษณ์ที่เป็นไปได้
  • ปรับปรุงหลังจากใส่ค่าในคอนเทนเนอร์
  • ตอนนี้ข้อความ "missingInclude" และ "missingIncludeSystem" จะใช้ตัวเลือก "–error-exitcode"
  • เมื่อสแกนโปรเจ็กต์ด้วยตัวเลือก "-j1" การประมวลผลไฟล์มาร์กอัปจะล่าช้าจนกว่าไฟล์โค้ดจะได้รับการประมวลผล

สุดท้ายนี้ หากคุณสนใจเรียนรู้เพิ่มเติมเกี่ยวกับเวอร์ชันใหม่นี้ คุณสามารถดูรายละเอียดได้ที่ลิงก์ต่อไปนี้

จะติดตั้ง cppcheck บน Linux ได้อย่างไร?

สำหรับผู้ที่สนใจจะสามารถติดตั้ง cppcheck บนลีนุกซ์ลีนุกซ์ พวกเขาสามารถทำตามคำแนะนำที่เราแบ่งปันด้านล่าง

หากคุณเป็นผู้ใช้ Debian หรือผู้ใช้ระบบปฏิบัติการอื่น ๆ ที่พัฒนาต่อยอดมาจาก Debianเช่น Deepin หรือ Ubuntu คุณสามารถทำการติดตั้งได้โดยตรงจากเทอร์มินัลโดยพิมพ์คำสั่งต่อไปนี้:

sudo apt-get install cppcheck

สำหรับผู้ใช้งานFedora และระบบปฏิบัติการที่พัฒนาต่อยอดจาก Fedoraสามารถทำการติดตั้งได้โดยพิมพ์คำสั่งต่อไปนี้:

sudo yum instalar cppcheck

หรือสำหรับผู้ใช้งาน Arch Linux หรือระบบปฏิบัติการอื่นๆ ที่พัฒนาต่อยอดจาก Arch Linuxคุณสามารถติดตั้งได้โดยใช้คำสั่งต่อไปนี้:

sudo pacman -S cppcheck


เพิ่มเป็นแหล่งข้อมูลที่ต้องการใน Google